gpt4 book ai didi

c#-4.0 - Windows 8 中 Windows 服务上的 Debugger.Launch()

转载 作者:行者123 更新时间:2023-12-03 06:30:54 26 4
gpt4 key购买 nike

在我安装了 Windows 8 后,这样的完全合法的声明不再起作用:

#if DEBUG
Debugger.Launch();
#endif

服务开始忽略那个东西。是的,我正在 Debug模式下构建项目。

如果我将其更改为 Debugger.Break() - 服务就会失败,并且仍然没有用于附加调试器的对话框。

最佳答案

secret 在于通过以下方式更改 Visual Studio JIT 调试器的注册表项:

reg add "HKCR\AppID\{E62A7A31-6025-408E-87F6-81AEB0DC9347}" /v AppIDFlags /t REG_DWORD /d 8 /f

在进行此更改之前,我的计算机上的值是 0x28。上面将其更改为 0x8。本质上,它删除了 0x20 标志。

如果您搜索 Microsoft 包含文件 (WTypesbase.h),您会发现以下内容:

#define APPIDREGFLAGS_IUSERVER_ACTIVATE_IN_CLIENT_SESSION_ONLY 0x20

进行此更改后,JIT 调试窗口将再次显示。我相信所有这一切都与 Microsoft 所做的各种 session 0 安全更改有关。

摘自这篇文章: http://forums.arcgis.com/threads/69842-Debugging-your-SOE-on-Windows-8

关于c#-4.0 - Windows 8 中 Windows 服务上的 Debugger.Launch(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12042054/

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