com – 在不同位置使用激活上下文API和许多dll
发布时间:2020-12-14 05:30:43 所属栏目:Windows 来源:网络整理
导读:我在位置A中运行的.Net客户端中使用激活上下文API,以在WS2008上的位置B(与A完全不同的位置,而不是同一台机器上的兄弟/后代等)上加载无组件的COM组件通过传递ACTCTX中的位置B,它工作正常. 但是,我现在需要对另一个COM dll做同样的事情,而另一个COM dll又依赖
我在位置A中运行的.Net客户端中使用激活上下文API,以在WS2008上的位置B(与A完全不同的位置,而不是同一台机器上的兄弟/后代等)上加载无组件的COM组件通过传递ACTCTX中的位置B,它工作正常.
但是,我现在需要对另一个COM dll做同样的事情,而另一个COM dll又依赖于生活在完全不同位置的几个.Net COM程序集. 我已将依赖的.Net程序集添加到清单中,并将清单和COM dll放在位置B中,但我必须将依赖的.Net程序集放在位置A(客户端运行的位置)才能使其工作.实际上,他们将住在完全不同的目录中,位置A和位置B. 我正在尝试做什么,即是否可以使用激活上下文api在不同的不相关目录中加载多个COM组件? 解决方法
.NET会查看活动和进程激活上下文,以发现与本机COM一样的无reg元数据(< clrClass>等).但是,与本机COM不同,它不使用激活上下文中包含的信息来确定实际文件的位置.在那里,我认为它只关注GAC,其次是客户端EXE旁边的文件位置.您可以使用Sysinternals Procmon确认这一点.我想你可以尝试汉斯建议的解决方法,或者手动将所需的组件预装到你的过程中,看看是否有效;我没有尝试这个,因为在我的场景中客户端exe是一个我无法控制的本机exe.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何在Windows下检测CLI中的当前媒体类型? (DVD-RW,BD-R等
- type-conversion – 如何在Go中将[4] uint8转换为uint32?
- Windows – Symantec Endpoint Protection(SEP / SEPM)流量
- 远程管理?如何修改服务器终端服务的端口
- windows – 通过SMB / CIFS的文件服务器
- windows-server-2008 – Active Directory:Server 2008和R
- windows-server-2008-r2 – Windows显示实际安装的物理内存
- .net – 为什么要使用Microsoft AntiXSS库?
- 说说windows内核中为什么要隐藏线程?(附源码)
- windows-8 – 在Windows应用商店应用程序后面的代码中转到G
推荐文章
站长推荐
- windows-8 – Windows 8.1应用程序内搜索控制和搜
- windows-server-2008 – Windows Server备份D:卷
- windows – 通过GPO / AD更新网络驱动程序
- windows-server-2008-r2 – IIS7主站点,其子目录
- 在Windows上区分USB闪存驱动器和USB硬盘驱动器
- 使用Qt 4 vs Qt 5开发适用于Windows和OS X的应用
- Win10系统安装UEFI+GPT配置
- powershell – Cim_PhysicalMemory和Win32_Compu
- .net – Edge的App_Browsers定义文件
- silent-installer – 如何在没有用户交互的情况下
热点阅读