gpt4 book ai didi

c++ - ActiveQt Com 应用程序示例 - COM 服务器未在 Windows 注册表中注册 (Qt4.7.4)

转载 作者:太空宇宙 更新时间:2023-11-04 14:19:47 25 4
gpt4 key购买 nike

我目前正在尝试使用随 Qt 安装提供的示例项目 Com App (Qt_folder\Examples\4.7\activeqt\comapp)

我在 Windows、Qt Creator 2.3.0 和 MinGw 编译器上使用 4.7.4 版。

因此示例项目编译并运行良好,但似乎 COM 服务器信息未注册到注册表中,因为我无法从任何脚本访问它,而且我在注册表中也找不到 UID,这意味着COM 服务器未注册。

我试图从 3 天前开始寻找解决方案,但我开始感到绝望。欢迎任何帮助。

附注对不起我的英语,它不是我的母语

最佳答案

不确定 Qt 是否在幕后处理这个问题,但您确定您的线程正在通过调用 CoInitializeEx 为 COM 初始化吗?

我一直在工作中使用一些 COM 和 Qt,但有时会忽略这一点。

CoInitializeEx Function

这里是一个使用函数的例子。

MyClass::MyClass()
{
// Make this call before attempting to access COM.
if( SUCCEEDED( CoInitializeEx( 0, COINIT_APARTMENTTHREADED ) ) )
{
// This single thread has been initialized for COM usage.
// Alternatively you can use COINIT_MULTITHREADED instead
// of COINIT_APARTMENTTHREADED if you require threaded
// support.
}
else
{
// Failed, still must call uninitialize.
CoUninitialize();
}
}

MyClass::~MyClass()
{
CoUninitialize();
}

关于c++ - ActiveQt Com 应用程序示例 - COM 服务器未在 Windows 注册表中注册 (Qt4.7.4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8517371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com