【问题标题】:Loading native COM DLLs in 64bit environment在 64 位环境中加载本机 COM DLL
【发布时间】:2011-08-13 03:09:55
【问题描述】:

我有一个 C++ 中的 32 位/64 位 COM DLL:mycom32.dll、mycom64.dll。它们都完全相同,但 mycom32.dll 是为 32 位编译的,而 mycom64.dll 是为 64 位编译的。 这意味着两个 DLL 具有相同的 UUID 和相同的 CLSID!

现在,有时我想在 32 位进程中使用这个 COM,有时我想在 64 位进程中使用这个 COM。

是否可以在不创建两个不同的 CLSID 的情况下加载正确的 DLL 并在运行时检查进程是否为 32 位/64 位?

【问题讨论】:

    标签: c++ com 64-bit 32bit-64bit 32-bit


    【解决方案1】:

    应该可以毫无问题地同时注册它们;这是Registry Redirection 应该解决的部分问题。

    这里有一个更多的detailed explanation 这是如何工作的。

    【讨论】:

    • 酷。我会假设您需要不同的 CLSID。
    猜你喜欢
    • 2013-03-02
    • 2012-05-22
    • 1970-01-01
    • 2012-05-28
    • 2015-08-16
    • 2014-06-06
    • 1970-01-01
    • 2012-02-14
    相关资源
    最近更新 更多