2009-05-01 8 views
7

मैं आईआईएस के तहत कई प्रक्रियाएं चलाता हूं और जब डीबगिंग करना मुश्किल हो सकता है, तो मुझे यह जानना मुश्किल हो सकता है कि मैं किस प्रक्रिया को संलग्न करना चाहता हूं। क्या आप प्रोग्रामिक रूप से किसी प्रक्रिया के "शीर्षक" को सेट कर सकते हैं ताकि इसे विजुअल स्टूडियो के "प्रक्रिया से अटैचमेंट" विंडो में पहचाना जा सके?क्या आप w3wp.exe का एक उदाहरण नाम दे सकते हैं ताकि यह प्रक्रिया में संलग्न हो सके?

उत्तर

1

प्रक्रिया के identity को बदलने के लिए बेहतर हो सकता है ताकि आप जान सकें कि किससे जुड़ना है।

2

आप इस वीएस मैक्रो का उपयोग एप्लिकेशन नाम के आधार पर एक कार्यकर्ता प्रक्रिया से जुड़ने के लिए कर सकते हैं। एकमात्र चाल है कि आपको C: \ Windows \ System32 \ inetsrv से% PROGRAMFILES (x86)% \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PublicAssemblies से Microsoft.Web.Administration.dll की प्रतिलिपि बनाने की आवश्यकता है।

Private Sub AttachToWorkerProcess(ByVal appName As String) 
    Dim targetPid = FindPoolPIDByName(appName) 
    If targetPid = -1 Then 
     MessageBox.Show("Unable to find a worker process hosting " + appName) 
    End If 

    Dim processes As EnvDTE.Processes = DTE.Debugger.LocalProcesses 

    For Each proc As EnvDTE.Process In processes 
     If proc.ProcessID = targetPid Then 
      proc.Attach() 
     End If 
    Next 

End Sub 

Private Function FindPoolPIDByName(ByVal appName As String) As Integer 
    Dim sm As New Microsoft.Web.Administration.ServerManager() 

    Dim appPoolName As String = Nothing 
    For Each site In sm.Sites 
     For Each app In site.Applications 
      If String.Equals(app.Path, "/" & appName, StringComparison.OrdinalIgnoreCase) Then 
       appPoolName = app.ApplicationPoolName 
      End If 
     Next 
    Next 

    If appPoolName Is Nothing Then 
     MessageBox.Show("Unable to find application " & appName) 
    End If 

    For Each wp In sm.WorkerProcesses 
     If wp.AppPoolName = appPoolName Then 
      Return wp.ProcessId 
     End If 
    Next 
    Return -1 
End Function 
फिर

:

Sub AttachToMyApp() 
    AttachToWorkerProcess("MyApp") 
End Sub 
संबंधित मुद्दे

 संबंधित मुद्दे