regfreecom

Embed a Registration-Free COM manifest into a C# dll with native/managed environment

冷暖自知 提交于 2019-12-06 04:59:20
问题 I'm currently working on a mixed native / managed application chain, which employs registration-free COM. The following image illustrates this: The C# wrapper DLL has been created using the tlbimp.exe utility. This allows each of the C# executables to access the native types and methods in the COM DLL. The COM DLL itself employs a server based RegFree COM manifest. Everything works fine, when the client based RegFree COM manifests are embedded in the C# executables. However, I would like to

Where do I need to switch the Activation Context?

无人久伴 提交于 2019-12-04 12:35:24
The problem I'm facing is essentially described here , that is: I have a DLL that is using a 3rd party in-process COM component dll. I want to use registration free COM with that in-process component. I want to embed and use a manfest into this DLL (not into the main EXE) so that I can use the 3rd party component in a reg free way. The Interface I use from the component is activated through a call to CoCreateInstance . The 3rd party COM component hasn't got any further (COM) dependencies and doesn't rely on or need isolation. I see that simply embedding a manifest into my DLL doesn't work, as

How to register COM libraries at runtime?

拥有回忆 提交于 2019-12-04 11:36:57
Let's say I'm developing an application that installs COM component and installer registers them. This works great. Now the software is required to run from a memory stick. How can I register my libraries runtime and make sure, that the registry is cleaned up after running the application? Are you always running on XP or later? Don't bother. Use "registration free COM". Essentially what you do is create a manifest file for the COM component so the Windows loader know what its registration is without having to put that in the registry. A walkthrough of what to do is in this article on MSDN:

Embed a Registration-Free COM manifest into a C# dll with native/managed environment

一笑奈何 提交于 2019-12-04 11:13:07
I'm currently working on a mixed native / managed application chain, which employs registration-free COM. The following image illustrates this: The C# wrapper DLL has been created using the tlbimp.exe utility. This allows each of the C# executables to access the native types and methods in the COM DLL. The COM DLL itself employs a server based RegFree COM manifest. Everything works fine, when the client based RegFree COM manifests are embedded in the C# executables. However, I would like to move and unify these manifest files into the C# DLL, which would ease maintenance and synchronization of

Registration-Free COM Interop: Deactivating activation context in finalizer throws SEHException

余生颓废 提交于 2019-12-02 07:21:04
I am currently working on a mixed managed / native work chain and need to create an activation context for registration-free COM support (see Embed a Registration-Free COM manifest into a C# dll with native/managed environment ). The following snippet is part of a larger class inside a C# DLL, which holds a reference to a COM Wrapper and establishes the required activation context: using System; using System.Runtime.InteropServices; using System.Diagnostics; namespace FirstClient { public class FirstClientDLL : IDisposable { ~FirstClientDLL() { Dispose(false); } void IDisposable.Dispose() {

How to create isolated/reg-free COM between Visual Basic DLLs and a C++ DLL?

ぃ、小莉子 提交于 2019-12-01 11:14:56
I have to use a VB (COM) DLL in a C++ DLL. I figured out how to access the VB (COM) DLL from the C++ DLL and it works. Now I've got the problem that I have to use isolated COM/reg-free COM because I can't register the DLL on every PC it has to be used on. I figured out to use manifest-files to achieve this but I can't get it to work and I don't know what is wrong. I have a VB DLL called AccConnVB.dll with the following AccConnVB.manifest file: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity type

How to create isolated/reg-free COM between Visual Basic DLLs and a C++ DLL?

江枫思渺然 提交于 2019-12-01 08:36:56
问题 I have to use a VB (COM) DLL in a C++ DLL. I figured out how to access the VB (COM) DLL from the C++ DLL and it works. Now I've got the problem that I have to use isolated COM/reg-free COM because I can't register the DLL on every PC it has to be used on. I figured out to use manifest-files to achieve this but I can't get it to work and I don't know what is wrong. I have a VB DLL called AccConnVB.dll with the following AccConnVB.manifest file: <?xml version="1.0" encoding="UTF-8" standalone=

Is there a way for registration free activation of EXE COM components

两盒软妹~` 提交于 2019-12-01 06:47:04
Is there a way to activate a COM component which is an EXE COM application and also it's dependent COM dlls? I want to activate this COM component from .NET application(VS 2005/VS 2008). The path of call is C# application --> invoking out-of-proc exe(this is through COM) and then this out-of-proc invokes few COM dlls Reg-free COM does not work for out of process components. ActiveX EXE and ActiveX Document project types cannot be used with Reg-Free COM, as discussed in the sidebar. Simplify App Deployment with ClickOnce and Registration-Free COM Look at Microsoft Forum Registration-Free EXE

Is there a way for registration free activation of EXE COM components

纵然是瞬间 提交于 2019-12-01 04:56:41
问题 Is there a way to activate a COM component which is an EXE COM application and also it's dependent COM dlls? I want to activate this COM component from .NET application(VS 2005/VS 2008). The path of call is C# application --> invoking out-of-proc exe(this is through COM) and then this out-of-proc invokes few COM dlls 回答1: Reg-free COM does not work for out of process components. ActiveX EXE and ActiveX Document project types cannot be used with Reg-Free COM, as discussed in the sidebar.

Microsoft.Windows.ActCtx on Windows Xp

最后都变了- 提交于 2019-11-30 16:23:32
These days I'm very much busy on developing an activex/com application. Some of our customers are working under heavily restricted windows environments. So i decided to make my application regfree. I found genman32.exe which can easily create manifests (also mt.exe is useful). Everything went fine but when i tried to execute my application from wsh(vbs or js) -which is obligated for my the situation because the application works on a com server- set o = CreateObject("Application.Interface") // No object reference Because "CreateObject" looks to the registery and there is no registery entry :)