从自定义目录

时间:2015-07-23 08:18:24

标签: c# .net mfc installation activex

我是C#活跃X部分的新手,并且它喜欢MFC因此这个问题可以在其他论坛或问题中重复。我尝试了3个小时的谷歌,但没有结果。

有三分之一的公司为我们提供本机activeX控件,我们在MFC dll应用程序中使用它。当我在“ c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 ”文件夹中复制所有第三部分提供的activeX dll并使用“ c注册activeX”时,ActiveX已成功启动并正常工作:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ RegASM.exe / tlb UseItActiveX.dll “命令。

现在,我想将我的MFC dll发布到市场中,因此我需要将第三方ACTIVEX dll合并到MSI版本中。

限制是,在发布环境中,我必须在“C:\ Program Files \ UseIt Software \ common”文件夹中复制ACTIVEX dll。

那么,如何从 C:\ Program Files \ UseIt Software \ common 文件夹而不是“c:\ Windows \ Microsoft.NET \ Framework \ v4”中检索本地C#ACTIVE_X dll。 0.30319" 即可。

注意:当我在发布环境中的 c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 文件夹中复制ACTIVEX dll时,activeX控件的所有功能都能正常工作。

请指导。

1 个答案:

答案 0 :(得分:1)

这个问题已经过时了。

当它是COM组件时,它会被注册。此COM组件的注册表数据中包含DLL的路径。

通常,COM组件驻留并不重要(只要它在搜索路径中的文件夹中包含所有需要的DLL)。

当使用REGSVR32或REGASM注册COM组件时,执行控件的所有必需信息已经放在注册表中,并且所有程序都可以在注册时从文件夹中使用它。