none
COM Server upgrade breaks interface RRS feed

  • Question

  • Ok, so apparently I posted this question in the wrong group last time, so I'll try again :)

    =======

    I have an ActiveX exe that I’m calling from a Web Service.

    The ActiveX exe however gets upgraded independently of the web service. When this happens the web service breaks.

    Looking in the registry, under HKEY_LOCAL_MACHING \ SOFTWARE \ Classes \ {DLL Name}  - the GUID seems to remain consistent after upgrading the EXE, however I’m guessing the interface GUIDs much change for some reason.

    Is there perhaps a GUID per interface that’s exposed that’s changing when the ActiveX EXE is recompiled? If so can someone tell me how to view these interfaces and confirm that his is or is not the case.

    =======

    What I'm trying to figure out of why my Interop Proxy DLL stops working every time the developer of this ActiveX EXE releases a new version. As I said that GUID in the redistry seems to remain the same. I'm just not sure how to go about debugging the issue.

    I don't want to have to re-compile my application every time he releases a new version and he does not seem to think he's changing the interface - so something else must be changing when you /unregserver  /regserver the COM server \ ActiveX EXE.

    ========

    Tuesday, August 31, 2010 12:30 PM

Answers

  • If the developer is explicitly declaring interfaces and their guids, some tools (I don't know what you're using) will generate a new guid if the interface changes. So yes, there are interfaces and they have guids. Without knowing what the tool is I don't know what the setting would be, but my guess from what you've said is that this maybe VB 6 and the setting is called Preserve Binary Compatibility IIRC.
    Phil Wilson
    • Marked as answer by eryang Monday, September 6, 2010 3:24 AM
    Tuesday, August 31, 2010 9:27 PM