Unable to emit assembly: <error message>
The Visual Basic compiler calls the Assembly Linker (Al.exe, also known as Alink) to generate an assembly with a manifest, with the linker reporting an error in the emission stage of creating the assembly.
Error ID: BC30145
To correct this error
Examine the quoted error message and consult the topic Al.exe Tool Errors and Warnings for further explanation and advice.
If the error persists, gather information about the circumstances and notify Microsoft Product Support Services.
To sign the assembly manually
Use the Sn.exe (Strong Name Tool) to create a public/private key pair file.
This file has a .snk extension.
Delete the COM reference that is generating the error from your project.
From the Windows Start menu, point to Programs, point to Microsoft Visual Studio 2008, point to Visual Studio Tools, and then click Visual Studio 2008 Command Prompt.
Move to the directory where you want to place your assembly wrapper.
Type the following code.
tlbimp <path to COM reference file> /out:<output assembly name> /keyfile:<path to .snk file>
An example of the code you might enter would be the following.
tlbimp c:\windows\system32\msi.dll /out:Interop.WindowsInstaller.dll /keyfile:"c:\documents and settings\mykey.snk"
Use double quotation marks (") if a path or file contains spaces.
In Visual Studio, add a .NET Assembly reference to the file you just created.