2011-07-14 147 views
59

當我想要調試時,我必須執行Debug-> Attach to Process - >在列表中查找進程 - > Attach。Visual Studio - 附加到進程快捷方式

我想知道如果我能創建某種快捷方式來爲我做這個嗎?

+2

擴展這個答案[復活擴展](http://visualstudiogallery.msdn.microsoft.com/043c7c91-e127-4616-bce0-39b869cee4b3),並試試看。它幫助我,所以我發表了它。 – jwaliszko

回答

21

最簡單的方法是編寫一個宏,查找您想要定位並自動附加的DTE.LocalProcess。例如

Public Sub AttachShortcut() 
    For Each proc In DTE.Debugger.LocalProcesses 
    If proc.Name = "what you're looking for" Then 
     proc.Attach() 
     Exit Sub 
    End IF 
    Next 
End Sub 

注:此堆棧溢出問題是相關的,有可能對你有用

+7

Visual Studio 2012中不再提供宏。有關更多詳細信息,請參閱http://www.infoq.com/news/2011/10/VS-Macros/ –

+4

您可以在Visual 2012中使用VS 2012/2013中的宏代碼http://vlasovstudio.com/visual-commander/ –

+2

John Rea的答案應該被標記爲新答案,或者至少在使用Visual Studio 2012及更高版本的人的答案中包含其信息。 加載項ReAttach和AttachTo是很好的例子。 –

11

寫宏是一個選擇的樣本,但它不能扣除已自己附加的過程。

另一個很好的解決方案是映射「附加處理」命令到快捷鍵:

工具 - >選項 - >環境 - >鍵盤,類型附加,如我在這個例子中那樣,並選擇一個快捷鍵):

enter image description here

+0

是的。這將打開附加到過程窗口。上述宏觀走得更遠。它發現過程並重視。 –

+0

我不確定他在追求哪個過程。開始越來越喜歡宏越來越多:) –

+0

它應該已經建立在快捷鍵Ctrl + Alt + P。如果您選擇不同的kbd設置可能會有所不同。 – user3285954

13

這個答案應該Visual Studio 2010中工作。

我喜歡具有按鈕來做到這一點我的調試工具欄

https://gist.github.com/1406827

要旨包含用於附接到IIS(w3wp.exe的)或ASP的方法(ASPNET_WP.EXE上)和nunit(nunit-agent.exe)。說明包括如何將宏添加到調試工具欄。

+2

我不能相信這個答案還沒有得到更多的選票。這些步驟非常容易遵循,並且完美地工作。謝謝! –

+0

艾德里安,很高興它爲你工作!當我在做網絡工作時,這爲我節省了很多時間。 –

+2

VS2012中沒有宏,所以你的回答是相當無用的 – Adaptabi

83

快捷是Ctrl鍵 + Alt鍵 + PVisual Studio 2005 and above

+0

謝謝!這是一個巨大的節省時間。 –

+0

會注意到,這個get被默認的重新銳化設置劫持! – roo2

+0

@EruPenkman不適用於Visual Studio方案(自ReSharper 9和Visual Studio 2013開始) – Gabriel

11

你可以使用Alt鍵快捷鍵ALT + DP通過調試菜單啓動「附加到進程」窗口。

一旦出現,你可以使用鍵盤來搜索可用進程的列表(例如輸入「W3WP」如果你要附加到一個IIS應用程序池)

7

加載項可能是一個更好的辦法,現在做到這一點。我使用一個名爲「附加到任何東西」。你可以在Visual Studio 2012中找到它們。轉到「工具」 - >「擴展和更新」,搜索「附加」,並安裝「附加到任何東西」。

另見: Automate "Attach to Process" in Visual Studio 2012

+2

這應該被標記爲新的答案,因爲宏在2012年被刪除。 加載項ReAttach和AttachTo是很好的例子。 –

11

我用這個建在 「快捷方式」

ALT + dPW¯¯ENTER

這將打開調試菜單,選擇附加進程,向下滾動到w3wp.exe並附加。

它很長,但應該可以在多個視覺工作室版本中工作,無需安裝程序,有或沒有resharper,它可以在運行多個IIS進程時工作,因爲您可以選擇要附加哪個進程。

+0

如果您(可以)設置所有網站以重複使用相同的應用程序池,則只會有一個w3p進程 – drzaus

8

Attach to Process Button

,使 '附加到進程' 在的Visual Studio 2013,2015年工具欄按鈕,任何工具欄上的2017年

  1. 單擊鼠標右鍵,點擊「自定義... '
  2. 單擊'命令'選項卡
  3. 單擊「工具欄」單選按鈕
  4. 選擇您希望您的按鈕,從下拉
  5. 出現單擊工具欄上的「添加命令」按鈕,從左邊
  6. 選擇的類別列表
  7. 選擇「調試」「附加到進程」從右側的命令列表中單擊,然後單擊確定。該按鈕將出現在您選擇的工具欄上。
  8. (可選)使用右側的「上移」和「下移」按鈕將新按鈕移動到工具欄中的所需位置。我在調試按鈕後面保存我的。
6

對於Visual Studio 2010 - 2017,有ReAttach extension可用。非常便利。

+0

這是對我而言的答案。我不確定提供鍵盤快捷鍵的答案是什麼,因爲這不是問題的要求。乾杯! – cybermonkey

0

VS擴展

更多:Search the VS Marketplace for "attach"

鍵盤

  • 附加到進程的快捷鍵是Ctrl鍵+ Alt鍵+P在Visual Studio 2005及以上。然後,您可以按您想要的進程名稱的第一個字母,例如ww3wp.exe它會跳到那個,然後輸入附加。
  • 您可以使用Alt鍵快捷鍵ALT +dP推出的「附加到進程」通過調試菜單窗口。

代碼


當前版本爲VS2015。

來吧,如果你已經形勢和我一樣,當你需要使用相同的一組處理重複連接到工藝操作,搶編輯/ :-)