Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

FIX: A CustomAttributeFormatException exception may occur when you try to install a COM+ application proxy on a Windows Server 2003-based computer that is running the .NET Framework 2.0


View products that this article applies to.

Symptoms

Consider the following scenario:
  • You create a Microsoft COM+ serviced component.
  • The serviced component contains a custom attribute.
  • You compile the serviced component in the Microsoft .NET Framework 1.1.
  • You create a COM+ application that contains the serviced component.
  • You export a COM+ application proxy .msi file from the COM+ application.
  • You try to install the COM+ application proxy .msi file on a Windows Server 2003-based computer that has the .NET Framework 2.0 installed.
In this scenario, you receive the following error message:
Error registering COM+ Application. Contact your support personnel for more information.
Additionally, a CustomAttributeFormatException exception occurs, and the following Warning event is logged in the Application log:

Event Type: Warning
Event Source: COM+ SOAP Services
Event Category: None
Event ID: 0
Date: Date
Time: Time
User: N/A
Computer: ComputerName
Description: System.Reflection.CustomAttributeFormatException: Binary format of the specified custom attribute was invalid.
at
System.Reflection.CustomAttributeEncodedArgument.ParseAttributeArguments(IntPtr pCa, Int32 cCa, CustomAttributeCtorParameter[]& CustomAttributeCtorParameters, CustomAttributeNamedParameter[]& CustomAttributeTypedArgument, IntPtr assembly)
at
System.Reflection.CustomAttributeEncodedArgument.ParseAttributeArguments(ConstArray attributeBlob, CustomAttributeCtorParameter[]& customAttributeCtorParameters, CustomAttributeNamedParameter[]& customAttributeNamedParameters, Module customAttributeModule)
at System.Reflection.CustomAttributeData..ctor(Module scope, CustomAttributeRecord caRecord)
at System.Reflection.CustomAttributeData.GetCustomAttributes(Module module, Int32 tkTarget)
at System.Reflection.CustomAttributeData.GetCustomAttributes(MemberInfo target)
at System.Runtime.InteropServices.Marshal.GenerateProgIdForType(Type type)
at
System.Runtime.InteropServices.RegistrationServices.RegisterManagedType(Type type, String strAsmName, String strAsmVersion, String strAsmCodeBase, String strRuntimeVersion)
at
System.Runtime.InteropServices.RegistrationServices.RegisterAssembly(Assembly assembly, AssemblyRegistrationFlags flags)
at System.EnterpriseServices.Internal.Publish.RegisterAssembly(String AssemblyPath)

↑ Back to the top


Resolution

Service pack information

To resolve this problem, obtain the latest service pack for Windows Server 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
889100 How to obtain the latest service pack for Windows Server 2003

Hotfix information

How to obtain the hotfix

This issue is fixed in the Windows Server 2003 Post-Service Pack 1 COM+ 1.5 Hotfix Package 9.

↑ Back to the top


Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. This problem was first corrected in Windows Server 2003 Service Pack 2.

↑ Back to the top


More information

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

↑ Back to the top


Keywords: KB918459, kbwinserv2003presp2fix, kbqfe, kbfix, kbwinserv2003sp2fix

↑ Back to the top

Article Info
Article ID : 918459
Revision : 3
Created on : 10/9/2011
Published on : 10/9/2011
Exists online : False
Views : 262