VS2010遠程調試全攻略

 

 

做法:

 

A:在遠程測試服務器A上,以管理員身份登錄後,做以下工作:

  1. 建立一個本地帳號Duser和密碼Pass@word,授予本機管理員權限,然後以這個帳號登錄。
  2. 將B機上的C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger下對應版本的內容拷貝到A機上(比如到C:\RemoteDebuger),因爲A機是x64的系統,所以我拷貝了x64目錄過來。
  3. 在防火牆設置裏面,允許C:\RemoteDebuger\x64\msvsmon.exe的網絡訪問、文件和打印機共享訪問、性能日誌和警報訪問。
  4. 運行C:\RemoteDebuger\x64\msvsmon.exe,注意提示“Msvsmon啓動了名爲"mobj@TestServer"的新服務器。正在等待新連接”,裏面那個名字在B機上會使用到。

 

B:在開發服務器B機上,以管理員身份登錄後,做以下工作:

  1. 建立一個本地帳號Duser和密碼Pass@word,授予本機管理員權限,然後以這個帳號登錄。這步要做的事情,其實是想與A機有個共同的帳號來達成授權訪問而已,所以如果在域裏,這個事情可能會稍微簡單點。
  2. 在防火牆設置裏面,允許C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe(也就是VS2010)的網絡訪問、文件和打印機共享訪問、性能日誌和警報訪問。
  3. 用VS2010打開你的解決方案代碼,在“調試”——“附加到進程”裏,只修改“限定符”,內容就填A機操作步驟4中提示的那個名字,點一下“刷新”,就可以看到A機上的進程了。

 

注意:

    測試服務器A和開發服務器B要用同樣的帳號登錄後進行操作才能調試,如果你有多個開發人員,要連接到測試服務器A上進行調試,恐怕只能一個個連過來調試了(不過這個也正常,一臺服務器同時提供多人調試是很容易出錯的)。

 

    順帶提一個事情,由於我調試的內容是Web程序,DLL放到了GAC裏面,所以遠程連接調試時,一直無法加上斷點。對於其它DLL,只要把對應的pdb文件也拷貝到一起,就可以加上斷點的,但GAC裏面,要自己通過命令行拷貝過去(注意,這個操作不能在資源管理器裏用鼠標拖拽的方式完成的)。

    比如寫了個DEMO.dll,放到GAC去之後,你需要手工拷貝到下面的目錄去的:

copy DsGroup.Pmp.UI.pdb C:\Windows\assembly\GAC_MSIL\DEMO\1.0.0.0__452252d6eacc2016

    目標路徑相信聰明的讀者是可以找得到的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章