首页 文章

远程调试Web部件

提问于
浏览
2

我无法让Visual Studio 2008远程调试器达到突破点 .

我有两个VMWare虚拟机 .

其中一个托管SharePoint MOSS 2007共享服务和中央管理员,并且还具有Visual Studio 2008 Professional . 我正在使用WSPBuilder来构建和部署我的Web部件 .

另一台机器是Web前端,我已将远程调试文件夹复制到C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ Remote Debugger并启动远程调试监视器 .

在Visual Studio中,我创建了基本的WSPBuilder项目,并使用默认的“Hello SharePoint”代码添加Web部件功能,然后使用WSPBuilder菜单进行部署,在站点级别激活它并将其添加到测试SharePoint页面 .

从Visual Studio我附加到位于Web前端的w3wp.exp,在那里我可以看到远程调试器监视器告诉我它已成功连接 .

现在无论我做什么VS都不会停在断点处 . 此外,断点图标显示消息“不会点击断点 . 此文档没有加载符号” .

在这种情况下,.pdb从何处加载?我该怎么做才能让它成功加载.pdb文件?

谢谢您的帮助 .

3 回答

  • 1

    对于托管代码调试,VS2008在远程计算机上查找符号而不是本地框 . 因此,必须可以访问Web前端框上运行的msvsmon.exe实例(通过共享或通过将PDB复制到该计算机上)来访问您的PDB .

  • 1

    WSPBuilder部署的程序集以发布模式构建,不包含调试符号 . 为了加载调试符号,您需要在调试模式下构建解决方案/项目并覆盖vm中bin / GAC中的程序集 . 调试程序集可以在bin / Debug下的visual studio项目文件夹中找到 .

    如果您在覆盖GAC程序集时遇到问题,请暂时停止与SharePoint站点关联的应用程序池 .

    希望这可以帮助!

  • 0

    要加载调试符号,请检查以下几点......

    • 如果远程计算机上的调试可执行文件是32位exe,那么应该在远程计算机上运行的远程调试程序也应该是32位版本的“Visual Studio 2008远程调试程序”,即使远程计算机的操作系统是64钻头机 . 如果远程计算机上的调试可执行文件是64位,则应使用“Visual Studio远程调试器(x64)” .

    • 远程调试的可执行文件的路径应该可以从安装Visual Studio的计算机访问,并且可执行文件的.pdb文件应该存在于该路径中 .

相关问题