I want to use an unmanaged COM library (specifically, Skype4COM) in a managed application without registering of this library. My steps were:
tlbimp Skype4COM.dll /out:Skype4COMWrapper.dll /namespace:Skype4COMWrapper
mt -tlb:Skype4COM.dll -dll:Skype4COM.dll -out:Skype4COM.dll.manifest
Then I’ve referenced Skype4COMWrapper.dll in my application and put the Skype4COM.dll.manifest together with the application executable file. Everything was built successfully, but when I try to use the unregistered library I get 80040154 error (“Class not registered”).
I’ve also looked in Skype4COMWrapper.dll and ensured that it contains COM manifest entries.
What have I missed?
It seems that I’ve solved the issue. What have I done:
Then I’ve referenced
Skype4COMWrapperin my app, created a new application manifestapp.manifestand added the following dependency right before the closing</asmv1:assembly>tag:Skype4COM.dllandSkype4COM.dll.manifestwere put together with the application executable file.