繁体   English   中英

远程调试Windows Service VS2010

[英]Remote debugging a Windows Service VS2010

我在系统上开发了Windows服务,并将该服务部署在没有Visual Studio的目标计算机上。 因此,我需要从PC调试应用程序。 我已经知道如何在本地计算机上调试Windows服务。

我的步骤:

  1. 将完整的bin文件夹(包含.exe和.pdb文件)复制到目标计算机。
  2. 使用InstallUtil.exe在目标计算机上安装服务(即installUtil.exe "pathToMyServiceEXE/myService.Exe"
  3. 开始服务
  4. 安装的Visual Studio远程调试应用程序(在“无身份验证模式”下启动,并选中了“调试”选项)
  5. 附加到Visual Studio(在我的PC上运行)中的服务

问题:我能够成功连接到目标计算机的Windows服务。 但是它找不到符号。

我已经检查了关于同一问题的其他SO问题,但到目前为止找不到正确的解决方案。 我尝试了以下方法来解决该问题:

  • 打开“ Tools->Options->Debugging->Symbols ,然后将.pdb文件的路径放在本地PC上。 (没用)
  • 打开Tools->Options->Debugging->General然后取消选中“仅启用我的代码”。
  • 除了以上两个之外,我已经确保我在本地PC上运行的是x64版本的远程调试工具,Windows服务的Debug / x64版本和debug / x64。

我可以为您提供的最佳建议(这现在不是最简单的方法,但从长远来看会得到回报)是在目标计算机上使用WinDBG调试器。 这是在目标计算机上进行零设置的下一步,但是需要您学习WinDBG的基础知识。 这并非微不足道,但从长远来看会有所回报。

关于为什么不能加载符号的原因:

  1. 也许PDB不匹配二进制文件?
  2. 也许当前登录用户无法访问该路径? (例如映射的驱动器等)
  3. 也许是权限问题?

除此之外我认为它应该起作用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM