c# - Replacing a C++ ActiveX component with a .NET implementation? -


In order to communicate with me, existing managed and unmodified software using an ActiveX component supplied by a third party But now it is necessary that this communication can be done through my application.

Ideally I'm one. I am able to install NET components which will expose the same interface, and will be usable as a drop-in replacement.

  • To ensure that my implementation of the interface is 100%, is the binary compatible with the existing object?

  • How can I ensure that applications should use my implementation of interface instead of legacy implementation? Is it just a matter of recording my implementation and canceling heritage?

  • How do I make sure that this is a "drop-in" replacement, and no changes are needed in existing software

  • How can I not ensure that unmanaged code can be used without any problem?

Note: I am able to use that .NET 4.0, if that will make things easier.

Edit: The bounty will move here after 2 days.

  1. Use the Type Library of the ActiveX Component to obtain the Interplay Library Import with Tlbimp.exe, if you use this component, you probably already have it in such a way that you can apply your code by inheriting the interface in the library.

  2. Your implementation should be used in the same type of GUIDs and ProgIDs as ActiveX components. Use OleView.exe, select File + View TipLeb and select ActiveX DLL to view GUIDs. ProgIDs are more difficult, the best part is that the registry is modified with SysInternals' ProcMon utility when you register ActiveX DLL with Regsvr32.exe Finally, when you register your replacement, then Regasm.exe The exact same change needs to be made by

  3. As the point 2.

  4. The same, unmanaged code gets used to use you instead of registering.

To do this well, you must know in fact to interface that if you have an ActiveX component actually out-off -process server (an XE), you can not do this work


Comments

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -