1

我创建了 ATL 服务。当我构建它时,它会在 Windows 7 64 位 PC 上的 Visual Studio 2005 上显示消息

**1>Linking...
1>Embedding manifest...
1>Performing registration**

一个窗口弹出对话框“无法打开服务管理器

当我试图运行我的项目时,它会给出这个错误

**First-chance exception at 0x7709c41f in XYZ.exe: 0x00000005: Access is denied.
The thread 'Win32 Thread' (0x1844) has exited with code 1063 (0x427).
The program '[10592] XYZ.exe: Native' has exited with code 1063 (0x427).**

我也检查了 regedit,在 regedit/Appid 中没有注册任何内容。

有人请帮我理解这个问题。

提前非常感谢。

4

2 回答 2

0

据我记得,Visual Studio 2005 的 ATL 版本不是 DEP 安全的:它从不允许包含可执行代码的地址执行 thunk 代码。这会使应用程序崩溃,您需要修复 ATL 代码上的 thunk,或者将您的应用程序放在DEP 异常列表中

于 2013-07-12T13:11:50.173 回答
0

如果您愿意,该 VS 能够修改注册表,您必须启动 VS“以管理员身份...”。默认情况下,UAC 阻止访问注册表。所以右键单击VS并选择“以管理员身份运行...”

于 2013-07-11T12:09:13.680 回答