How do I generate COM interop proxies into C# source code?
.net, c#, com, interop
Solution
Take a look at the following MSDN article:
- How to: Create Wrappers Manually (Talks about how to create your interop assembly manually.)
Once you've got the interop assembly, use a tool like Reflector to disassemble it and generate the raw C# source. Reflector.FileDisassembler makes this really easy.
Now you can include the generated C#/VB sources directly into your assembly.
Problem
This questions is a follow up on an answer by Paul Alexander to the question "Should interop assemblies be signed?". Depending on how complex your Interop assemblies are - you can generate the proxy code into a separate .CS/.VB file and compile it directly into your assembly. Then you won't have to worry about strong name issues. How would I go about generating the interop proxy code for a COM library into C# source code? I guess it could be done with tlbimp and then extracting the source with Reflector. Has anyone done this or is there a simpler way?