文章編號: 833977 - 上次校閱: 2007年4月3日 - 版次: 11.5

如何開啟需遠端偵錯在 Windows XP 含 Service Pack 2, 在 Windows Server 2003 Service Pack 1, 或 Windows Vista 中

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。
Microsoft 現在提供一項工具, 將會執行大部分所需的防火牆設定為您。 如需詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件::
841177? (http://support.microsoft.com/kb/841177/ ) 透過 Windows XP Service Pack 2 防火牆運作 DebuggerFirewall 公用程式, 可讓 Visual Studio 遠端偵錯工具的描述

在此頁中

全部展開 | 全部摺疊

結論

為了協助保護您的電腦免受惡意軟體 (例如病毒由惡意使用者或攻擊大幅增強包含 Windows XP Service Pack 2 (SP 2) 中的 「 Windows 防火牆 」 功能。 Windows 防火牆 」 會取代較早版本的 Windows XP 中所包含網際網路連線防火牆 (ICF) 功能。 根據預設值, Windows 防火牆開啟對所有網路連線, 包括連線至網際網路。 如需有關「Windows 防火牆」的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件::
843090? (http://support.microsoft.com/kb/843090/ ) Windows XP Service Pack 2 (SP 2) 中的 「 Windows 防火牆 」 功能的描述
本文將逐步告訴您如何開啟需當您在 Microsoft Windows XP 與 SP 2 中使用 Microsoft Windows 防火牆遠端偵錯。

開啟 [ 遠端偵錯

若要在遠端偵錯在 Windows XP 與 SP 2, 開啟 Windows 防火牆必須設定, 如下所示:
  • 如果是在 「 隔離 」 模式, Windows 防火牆必須, 這樣 Windows 防火牆就不再在 「 隔離 」 模式下執行適當動作。
  • 如果是在, Windows 防火牆必須開啟某些連接埠, 必須被授與使用權限到 Microsoft Visual Studio . NET 以及到可執行其他程式中使用遠端偵錯。
  • 如果 Windows 防火牆是關閉, 您可能會不必設定防火牆。
  • 除此之外, 如果不是系統管理員, 遠端電腦上的人執行 Visual Studio . NET 使用者是必須設定 DCOM 設定。
遵守實際步驟過程指引, 以進行遠端偵錯, 開啟目前使用者必須擁有系統管理認證。 這些指示是只針對網際網路通訊協定第 4 版 (IPV 4) 為基礎的網路設定。

在執行 Visual Studio . NET 電腦上設定 DCOM

注意 藉由使用分散式元件物件模型設定公用程式 (Dcomcnfg . exe), 您進行變更之後, 您必須重新開機, 變更才會生效。
  1. 在命令提示字元, 輸入 dcomcnfg 然後按 ENTER 鍵 「 元件服務 」 會開啟。
  2. 在 [ 元件服務, Component Services 展開, 展開 電腦 , 及 [ 我的電腦 ] 。
  3. 工具列上按一下 [ 我的電腦設定 ] 按鈕。 我的電腦執行 ] 對話方塊隨即出現。
  4. 在 [ 我的電腦 ] 對話方塊, 按一下 [ COM 安全性 ] 索引標籤。
  5. 在 [ 存取使用權限 , 按一下 [ 編輯限制 ] 。 存取使用權限 ] 對話方塊隨即出現。
  6. 在 [ 群組或使用者名稱 , 按一下 [ ANONYMOUS LOGON 。
  7. Permissions for ANONYMOUS LOGON , 在 [ 選取 遠端存取 核取方塊, 並按一下 [ 確定 ] 。
注意 請如果您無法按一下 [ 我的電腦設定 ] 按鈕所述步驟 3, 依照下列步驟執行:

重要事項 方法, 這個區段、 工作或包含的步驟, 告訴您如何修改登錄。 不過, 如果您修改登錄不正確可能會發生嚴重的問題。 因此, 請確定您仔細地遵循這些步驟。 要加入保護, 您修改它之前備份登錄。 若發生問題時再, 您可以還原登錄。 如需如何備份及還原登錄, 請按一下下列文件編號, 檢視 「 Microsoft 知識庫 」 中的文件中的文件:
322756? (http://support.microsoft.com/kb/322756/ ) 如何備份及還原在 Windows 登錄
  1. 移除 Microsoft 分散式交易 (MSDTC) 服務 如果要執行這項操作,請依照下列步驟執行。:
    1. 請按一下 [ 開始 ] 再按一下 [ 執行 ], 鍵入 cmd, 然後按一下 [ 確定 ]。
    2. 在命令提示字元, 鍵入下列命令以停止 MSDTC 服務:
      Net stop msdtc
    3. 在命令提示字元, 輸入下列命令, 移除 MSDTC:
      Msdtc –uninstall
      沒有訊息將會傳回命令提示字元。
  2. 在 「 登錄編輯程式 」, 刪除
    \HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC
    子機碼。
  3. 安裝 MSDTC 服務。 如果要執行這項操作,請依照下列步驟執行。:
    1. 在命令提示字元, 輸入下列命令來安裝 MSDTC:
      Msdtc –install
    2. 在命令提示字元, 鍵入下列命令以啟動 MSDTC 服務:
      Net start msdtc

Configure the computer that is running Visual Studio .NET

開啟 Windows 防火牆

若要這麼做, 請按一下 [ 開始 ] , 按一下 執行 , 型別 firewall.cpl 然後按一下 [ 確定 ]

開啟 TCP 135 連接埠

DCOM 遠端程序呼叫 (RPC) 使用傳輸控制通訊協定 (TCP) 連接埠 135。 如果程式使用 DCOM 來與遠端電腦, 通訊必須先開啟此連接埠。 如果要開啟 TCP 連接埠 135, 請依照下列步驟執行:
  1. On the Exceptions tab, click Add port, and then click TCP.
  2. In the Port number box, type 135.
  3. In the Name box, type Remote Procedure Call (RPC).
  4. Click Change scope, click My network (subnet) only, and then click OK. This step is optional.
  5. If you have no other port exceptions to add, click OK two times to close the Windows Firewall dialog box.

開啟 UDP 連接埠 4500

使用者資料包通訊協定 (UDP) 連接埠 4500 是用於網際網路通訊協定安全性 (IPSec)。 如果您的網域原則需要透過 IPSec, 完成所有網路通訊, 此連接埠必須先開啟以供網路上任何作業。 如果您的網域原則不需要 IPSec, 請移至 「 開啟 UDP 連接埠 500 > 一節。

如果要開啟 UDP 連接埠 4500, 請依照下列步驟執行:
  1. 在 [ 例外 ] 索引標籤, 再按一下 [ 新增連接埠 , 及 TCP 。
  2. 在 [ 連接埠號碼 ] 方塊, 鍵入 4500.
  3. 在 [ 名稱 ] 方塊, 鍵入 User Datagram Protocol (UDP).
  4. 按一下 [ 變更領域 按一下 [ 我的網路 (子網路) 只 , 然後按一下 [ 確定 ] 。 (這個步驟是選擇性的)。
  5. 如果您有沒有其他連接埠例外加入, 請按一下以關閉 [ Windows 防火牆 ] 對話方塊兩次 [ 確定 ] 。

開啟 UDP 連接埠 500

IPSec 是用於 UDP 連接埠 500。 如果您的網域原則需要透過 IPSec, 完成所有網路通訊, 此連接埠必須先開啟以供網路上任何作業。 如果您的網域原則不需要 IPSec, 前往步驟 5。

如果要開啟 UDP 連接埠 500, 請依照下列步驟執行:
  1. 在 [ 例外 ] 索引標籤, 再按一下 [ 新增連接埠 , 及 TCP 。
  2. 在 [ 連接埠號碼 ] 方塊, 鍵入 500.
  3. 在 [ 名稱 ] 方塊, 鍵入 IPSec.
  4. 按一下 [ 變更領域 按一下 [ 我的網路 (子網路) 只 , 然後按一下 [ 確定 ] 。 (這個步驟是選擇性的)。
  5. 按兩次 [ 確定 ] 以關閉 [ Windows 防火牆 ] 對話方塊。

開啟 [ 檔案及列印共用

  1. 在 [ 程式和服務 」 的 [ 例外 ] 索引標籤, 區域再按一下 [ File and Print Sharing , 及 編輯器 ] 。
  2. 在 例外規則 ] 對話方塊, 選取下列核取方塊:
    • TCP 139
    • TCP 445
    • UDP 137
    • UDP 138 連接埠
  3. 按一下 [ 子網路只限本機 給所有連接埠在步驟 2 中所述。 (這個步驟是選擇性的)。
  4. 按一下 [ 確定 ] 。

將 Devenv.exe 新增到應用程式例外清單

必須將應用程式新增到應用程式例外清單, 讓應用程式, 需要要在執行階段能夠正確地運作, 開啟動態連接埠。

如果要新增 Visual Studio . NET 開發環境 (Devenv.exe) 新增到應用程式例外清單, 請依照下列步驟執行:
  1. 在 [ 例外 ] 索引標籤, 按一下 [ 新增程式 。 新增程式 ] 對話方塊隨即出現。
  2. 按一下 [ 瀏覽 ] 找出 Devenv.exe, 然後按一下 [ 確定 ] 。

    請注意 Devenv.exe 位於下列資料夾中:
    磁碟機 : \Program Files \Microsoft Visual Studio . NET \Common7\IDE (2003)
  3. 按一下 [ 變更領域 、 按一下以選取 我的網路 (子網路) 只 , 及 [ 確定 ] 。 (這個步驟是選擇性的)。
  4. 在 [ 新增程式 ] 對話方塊, 按一下 [ 確定 ] 。
  5. 在 [ Windows 防火牆, 按一下 [ 確定 ] 以儲存您的設定。

設定遠端電腦

在偵錯工具電腦上開啟的所有連接埠也必須開啟遠端電腦上。 若要開啟 [ 連接埠 TCP 135、 UDP 4500 和 UDP 500, 及以開啟檔案及列印共用, 依照本文 " " 設定電腦正在執行 Visual Studio . NET> 一節。

您也必須加入下列可執行檔 (. exe) 檔案: 應用程式例外清單
  • Mdm . exe
  • Vs7Jit.exe
  • Msvcmon.exe
這些可執行檔是, Visual Studio . NET 會使用可進行遠端偵錯元件。 要納入這些元件的應用程式, 可以開啟 DCOM 連接埠動態地在執行階段, 清單請依照下列步驟執行。

開啟 Windows 防火牆

  1. 請按一下 [ 開始 ] , 按一下 執行 , 型別 firewall.cpl 然後按一下 [ 確定 ]
  2. 按一下 [ 例外 ] 索引標籤。

將 Mdm . exe 新增到應用程式例外清單

  1. 在 [ 例外 ] 索引標籤, 按一下 [ 新增程式 。 新增程式 ] 對話方塊隨即出現。
  2. 在 [ 新增程式 ] 對話方塊, 按一下 [ 瀏覽 ] 。
  3. 找出 Mdm . exe, 然後再按一下 [ 確定 ]

    注意 Mdm . exe 是位於 磁碟機 : \Program Files\Common Files\Microsoft Shared\VS7Debug 資料夾
  4. 按一下 [ 變更領域 、 按一下以選取 我的網路 (子網路) 只 , 及 [ 確定 ] 。 (這個步驟是選擇性的)。
  5. 在 [ 新增程式 ] 對話方塊, 按一下 [ 確定 ] 。
  6. 在 [ Windows 防火牆, 按一下 [ 確定 ] 以儲存您的設定。

將 Vs7jit.exe 新增到應用程式例外清單

  1. 判定 Vs7jit.exe 的簡短檔案路徑。 如果要執行這項操作,請依照下列步驟執行。:
    1. 在命令提示字元中輸入下列命令,然後按下 ENTER::
      for %d in ("%CommonProgramFiles%\Microsoft Shared\VS7Debug\vs7jit.exe" ) do @echo %~sd
    2. 儲存從這個命令到與下列類似的輸出:
      C:\PROGRA~1\COMMON~1\MICROS~1\VS7Debug\vs7jit.exe
  2. 在 [ 例外 ] 索引標籤, 按一下 [ 新增程式 。 新增程式 ] 對話方塊隨即出現。
  3. 在 [ 新增程式 ] 對話方塊, 按一下 [ 瀏覽 ] 。
  4. 在 [ 檔案名稱 ] 方塊, 輸入, 您在步驟 1b 儲存 Vs7jit.exe 的路徑。
  5. 按一下 [ 變更領域 、 按一下以選取 我的網路 (子網路) 只 , 及 [ 確定 ] 。 (這個步驟是選擇性的)。
  6. 在 [ 新增程式 ] 對話方塊, 按一下 [ 確定 ] 。
  7. 在 [ Windows 防火牆, 按一下 [ 確定 ] 以儲存您的設定。

將 MSVCMon.exe 新增到應用程式例外清單

  1. 在 [ 例外 ] 索引標籤, 按一下 [ 新增程式 。 新增程式 ] 對話方塊隨即出現。
  2. 在 [ 新增程式 ] 對話方塊, 按一下 [ 瀏覽 ] 。
  3. 找出 Msvcmon.exe, 然後再按一下 [ 確定 ]

    注意 Msvcmon.exe 是位於 磁碟機 : \Program Files\Common Files\Microsoft Shared\VS7Debug 資料夾
  4. 按一下 [ 變更領域 、 按一下以選取 我的網路 (子網路) 只 , 及 [ 確定 ] 。 (這個步驟是選擇性的)。
  5. 在 [ 新增程式 ] 對話方塊, 按一下 [ 確定 ] 。
  6. 在 [ Windows 防火牆, 按一下 [ 確定 ] 以儲存您的設定。

啟用 Web 伺服器偵錯

HTTP 使用 TCP 連接埠 80。 您必須開啟 TCP 連接埠 80 進行偵錯, Web 為基礎。 針對 Microsoft ASP . NET 偵錯、 進行偵錯 ATL Server 和對傳統 ASP 偵錯, 這種情況。

如果要開啟 TCP 連接埠 80, 請依照下列步驟執行:
  1. 請按一下 [ 開始 ] , 按一下 執行 , 型別 firewall.cpl 然後按一下 [ 確定 ]
  2. 在 [ 例外 ] 索引標籤, 再按一下 [ 新增連接埠 , 及 TCP 。
  3. 在 [ 連接埠號碼 ] 方塊, 鍵入 80.
  4. 在 [ 名稱 ] 方塊, 鍵入 HTTP.
  5. 按一下 [ 變更領域 按一下 [ 我的網路 (子網路) 只 , 然後按一下 [ 確定 ] 。 (這個步驟是選擇性的)。
  6. 按兩次 [ 確定 ] 以關閉 [ Windows 防火牆 ] 對話方塊。

啟用指令碼偵錯

若要偵錯, 遠端電腦上執行指令碼必須加入處理序主控指令碼新增到應用程式例外清單。 通常, 在傳統 ASP 偵錯, 指令碼會載入在 Dllhost . exe 處理序或在 Inetinfo . exe 處理序中。 不過, 指令碼對於在 Microsoft Internet Explorer 中, 執行的指令碼通常會載入在 Iexplore . exe 處理序或 Explorer . exe 處理序中。

如果要新增指令碼新增到例外清單, 應用程式裝載處理序請依照下列步驟執行:
  1. 請按一下 [ 開始 ] , 按一下 執行 , 型別 firewall.cpl 然後按一下 [ 確定 ]
  2. 在 Windows 防火牆, 按一下 [ 例外 ] 索引標籤。
  3. 在 [ 例外 ] 索引標籤, 按一下 [ 新增程式 。 新增程式 ] 對話方塊隨即出現。
  4. 在 [ 新增程式 ] 對話方塊, 按一下 [ 瀏覽 ] 。
  5. 找出處理序主控指令碼, 然後再按一下 [ 確定 ]
  6. 按一下 [ 變更領域 、 按一下以選取 我的網路 (子網路) 只 , 及 [ 確定 ] 。 (這個步驟是選擇性的)。
  7. 在 [ 新增程式 ] 對話方塊, 按一下 [ 確定 ] 。
  8. 在 [ Windows 防火牆, 按一下 [ 確定 ] 以儲存您的設定。

以一般使用者執行偵錯工具

您是否要以一般使用者, 執行偵錯工具必須完整使用者權限至可執行檔所在資料夾。 除此之外, 如果您沒有系統管理員使用者權限在遠端電腦上, 您必須存取權限和啟動權限來以一般使用者執行偵錯工具。

請注意 A 一般使用者是使用者不具備系統管理員使用者權利。

注意 藉由使用分散式元件物件模型設定公用程式 (Dcomcnfg . exe), 您進行變更之後, 您必須重新開機, 變更才會生效。

以授予存取權限, 並啟動使用權限, 您必須擁有系統管理員使用者權限。 先, 系統管理員取得使用者權利。 然後, 請依照下列步驟執行:
  1. 在命令提示字元, 輸入 dcomcnfg 然後按 ENTER 鍵 「 元件服務 」 會開啟。
  2. 在 [ 元件服務, Component Services 展開, 展開 電腦 , 及 [ 我的電腦 ] 。
  3. 工具列上按一下 [ 我的電腦設定 ] 按鈕。 我的電腦執行 ] 對話方塊隨即出現。
  4. 在 [ 我的電腦 ] 對話方塊, 按一下 [ COM 安全性 ] 索引標籤。
  5. 在 [ 啟動和啟用權限 ] , 按一下 [ 編輯限制 ] 。
  6. 如果您的群組或使用者名稱沒有出現在 群組或使用者名稱 清單, [ 啟動權限 ] 對話方塊中請依照下列步驟執行:
    1. 在 [ 啟動權限 ] 對話方塊, 按一下 [ 新增 ] 。
    2. 在 [ 選取使用者、 電腦或群組 ] 對話方塊, 再在 輸入物件名稱來選取 方塊, 新增您的使用者名稱與您的群組及 確定 ] 。
  7. 在 [ 啟動權限 ] 對話方塊, 選取您的使用者名稱和 群組或使用者名稱 ] 方塊中您的群組。
  8. 在 [ 允許 ] 欄中 對 使用者 權限 遠端啟動過程 (Activation , 選取, 然後按一下 [ 確定 ]

    請注意 使用者 是使用者名稱或 群組或使用者名稱 ] 方塊中所選取群組。 針對您的所有使用者且為您的所有群組重複執行步驟 7 和 8。
注意 請如果您無法按一下 [ 我的電腦設定 ] 按鈕所述步驟 3, 依照下列步驟執行。

重要事項 方法, 這個區段、 工作或包含的步驟, 告訴您如何修改登錄。 不過, 如果您修改登錄不正確可能會發生嚴重的問題。 因此, 請確定您仔細地遵循這些步驟。 要加入保護, 您修改它之前備份登錄。 若發生問題時再, 您可以還原登錄。 如需如何備份及還原登錄, 請按一下下列文件編號, 檢視 「 Microsoft 知識庫 」 中的文件中的文件:
322756? (http://support.microsoft.com/kb/322756/ ) 如何備份及還原在 Windows 登錄
  1. 在命令提示字元, 輸入 net stop msdtc然後按 ENTER 鍵
  2. 移除 Microsoft 分散式交易 (MSDTC) 服務
  3. 在 「 登錄編輯程式 」, 刪除
    \HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC
    子機碼。
  4. 安裝 MSDTC 服務。
  5. 在命令提示字元中,輸入 net start msdtc然後按 ENTER 鍵

Windows Vista 安裝資訊

在 Windows Vista, 請登出並安裝遠端偵錯工具之後, 再登入。

?考

如需 Windows XP SP 2, 請造訪下列 Microsoft Developer Network (MSDN) 網站:
http://msdn2.microsoft.com/en-us/security/aa570371.aspx (http://msdn2.microsoft.com/en-us/security/aa570371.aspx)

這篇文章中的資訊適用於:
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Academic Edition
  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Studio .NET 2002 Enterprise Architect
  • Microsoft Visual Studio .NET 2002 Enterprise Developer
  • Microsoft Visual Studio .NET 2002 Academic Edition
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Ultimate
  • Windows Vista Business
  • Microsoft Windows Server 2003 Service Pack 1?應用於:
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows XP Professional
關鍵字:?
kbvs2005applies kbvs2005swept kbdebug kbhowtomaster KB833977 KbMtzh kbmt
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。如果您發現錯誤,並想要協助我們進行改善,請填寫本篇文章下方的問卷。
按一下這裡查看此文章的英文版本:833977? (http://support.microsoft.com/kb/833977/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。