Joined
·
1 Posts
I have 2 DLLs; Widgets and Helpers.
The Helpers dll provides an interface with 3 functions:
STDMETHOD(Function1)(IUnknown* pUnk);
STDMETHOD(Function2)(IUnknown* pUnk);
STDMETHOD(Function3)(IUnknown* pUnk);
I have no control over this DLL/TLB/Lib. It's not mine.
Widgets inherits from Helpers and implements the 3 functions. Widgets is created from a 3rd party VS wizard so it's not mine either, but at least I have the source code and I can modify it.
From here everything works fine.
From C#, I can see/call all 3 functions from the compiled Widgets DLL. The thing is, I don't really need access to any of them. I would like to another function NOT in the the Helpers DLL to the Widgets DLL.
I add to Widgets:
public:
STDMETHOD(Function4)(IUnknown* pUnk);
Everything builds and runs fine, except that from C#, Function4 never appears. No matter how I add it, I cannot see/access it.
I have even created another class(Helpers2) with a single interface and added a single method to it. I implemented this interface(Helpers2) in Widgets and it *still* won't show up.
HOW DO I ADD A SINGLE METHOD TO WIDGETS SO IT WILL SHOW UP?
Widgets, as created by the wizard, doesn't provide an interface, so I guess that the STDMETHODs are just publicly exported. However it is doing it, it works fine. I just want to add one more %$#!$% function that does the same thing.
All I want in the world is a DLL with a single function to pipe data into the Widgets DLL and a connection point to get data back.
I am using XP SP3 with VS2003(unmanaged code) and VS2005(C# code). All unmanaged DLLs are unattributed ATL objects with MFC support.
Man I hate COM.
The Helpers dll provides an interface with 3 functions:
STDMETHOD(Function1)(IUnknown* pUnk);
STDMETHOD(Function2)(IUnknown* pUnk);
STDMETHOD(Function3)(IUnknown* pUnk);
I have no control over this DLL/TLB/Lib. It's not mine.
Widgets inherits from Helpers and implements the 3 functions. Widgets is created from a 3rd party VS wizard so it's not mine either, but at least I have the source code and I can modify it.
From here everything works fine.
From C#, I can see/call all 3 functions from the compiled Widgets DLL. The thing is, I don't really need access to any of them. I would like to another function NOT in the the Helpers DLL to the Widgets DLL.
I add to Widgets:
public:
STDMETHOD(Function4)(IUnknown* pUnk);
Everything builds and runs fine, except that from C#, Function4 never appears. No matter how I add it, I cannot see/access it.
I have even created another class(Helpers2) with a single interface and added a single method to it. I implemented this interface(Helpers2) in Widgets and it *still* won't show up.
HOW DO I ADD A SINGLE METHOD TO WIDGETS SO IT WILL SHOW UP?
Widgets, as created by the wizard, doesn't provide an interface, so I guess that the STDMETHODs are just publicly exported. However it is doing it, it works fine. I just want to add one more %$#!$% function that does the same thing.
All I want in the world is a DLL with a single function to pipe data into the Widgets DLL and a connection point to get data back.
I am using XP SP3 with VS2003(unmanaged code) and VS2005(C# code). All unmanaged DLLs are unattributed ATL objects with MFC support.
Man I hate COM.