简体   繁体   中英

Registration free COM, VBScript chokes on C# dll

I'm trying to get a third party app (hMailServer) to consume my C# library. They support 3rd party libraries using VBScript hooks. I got everything working fine using registration-full COM, but now want to use registration free.

I've modified the hMailServer.exe manifest and added a manifest to my C# library. Now the hMailServer service starts up just fine and SxS trace shows that the library is found. If I neglect to create my C# library manifest I get an error that "Windows could not start the hMailServer service on Local Computer... because its side by side configuration is incorrect" and sxstrace gives errors so I know the manifests are fine. However, the VBScript events fail to run with the following error:

Script Error: Source(null) - Error: 8013101B - Description(null) - Line: 2 Column: 1 - Code(null)

The first 2 lines of the VB6 script just read:

Dim oHandlers
Set oHandlers = CreateObject("hMailServerPlugins.EventHandlers")

(hMailServerPlugins.EventHandlers is obviously the name of my COM visible class)

As mentioned, everything works just fine with COM registration. Any idea what I'm missing?

This may be a bit late, but I've seen this error if you've mixed .Net framework versions. If you've spun up a CLR of a lesser version first, then attempts to create a C# COM object using a newer framework after the fact will fail with that exception.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM