赞
踩
创建 ATL COM 项目:在 Visual Studio 2022 中,选择 "文件" -> "新建" -> "项目",然后在 "创建新项目" 对话框中选择 "Visual C++" -> "ATL" 类别,选择 "ATL 项目向导" 作为项目模板。输入项目名称和存储位置,点击 "确定"。
安装 QT:首先,从 QT 官方网站(https://www.qt.io/)下载并安装适用于 Visual Studio 2022 的 QT 版本。确保选择正确的 QT 版本,以兼容您的 Visual Studio 2022。
配置项目属性:
Qt5Core.lib
、Qt5Gui.lib
、Qt5Widgets.lib、Qt5Network.lib;
等。添加 QT 代码:
#include <QtCore/QtGlobal>
。构建和运行:完成代码编写后,选择 "生成" -> "生成解决方案" 来构建项目。如果一切顺利,您可以通过选择 "调试" -> "开始调试" 或按下 F5 键来运行您的 ATL COM 项目,并验证 QT 代码的运行结果。
2.1 在属性页中,选择“生成事件” -> “后期生成事件”选项卡。
在“命令行”文本框中,添加以下命令来手动注册 QT 库的输出:
"$(QTDIR)\bin\windeployqt.exe" "$(TargetPath)"
这将使用 windeployqt.exe
工具自动复制 QT 库所需的运行时依赖项到项目输出目录中,并注册库文件。
单击“确定”按钮保存更改。
我没成功过。
2.2 用VS2022自带的cmd
<path_to_qt>\bin\windeployqt.exe <path_to_output_binary>
其中 <path_to_qt>
是 QT 安装目录,<path_to_output_binary>
是 ATL COM 项目的输出二进制文件路径。
D:\QT\Qt5.14.2\5.14.2\msvc2017_64\bin\windeployqt.exe D:\Source\repos\UnifiedRegistInterface\x64\Debug\UnifiedRegistInterface.dll
类视图->类向导
选择上面,出现的是一般 “添加方法” 对话框
选择下面一个,出现的是一般 “添加IDL方法” 对话框
如果ATL项目支持MFC 出现的是“添加 IDL MFC 方法”对话框
返回类型必须是 :HRESULT
在 ATLObject.h中添加声明
STDMETHOD(in2out)(BSTR in, BSTR out);
在 ATLObject.cpp中添加定义
- STDMETHODIMP CATLObject::in2out(BSTR in, BSTR out)
- {
- return S_OK;
- }
只要添加QT的库编译就会出现
解决方法: 在属性中设置-》“逐用户重定向”-》选“是” 无效.
把需要用的.dll和lib文件放到文件夹下即可:
在Windows操作系统中,按下Win键 + R键,然后输入"regedit"并按回车键,将打开注册表编辑器。
对应的代码
https://download.csdn.net/download/aggie4628/88764832
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。