डिबगर को IIS उदाहरण में संलग्न करें


83

मेरे पास एक XP मशीन पर IIS 5.1, और विजुअल स्टूडियो 2005 है। मैं अपने डिबगर को IIS उदाहरण में कैसे संलग्न करूं।

BTW: मैं चल रही प्रक्रियाओं के भीतर IIS प्रक्रिया नहीं देख रहा हूँ या शायद मैं नहीं जानता कि क्या देखना है।


1
Google से आने वाले अन्य लोगों के लिए: स्पष्ट रूप से यह दृश्य वेब डेवलपर 2010 एक्सप्रेस में उल्लेखनीय नहीं है। मुझे संदेह है कि यह विज़ुअल C # एक्सप्रेस में भी नहीं है।
जोएल पेल्टनन

जवाबों:


133

विज़ुअल स्टूडियो में:

  1. मेनू बार से "डीबग" पर क्लिक करें
  2. "प्रक्रिया से संलग्न करें" पर क्लिक करें
  3. "की जाँच करें सभी उपयोगकर्ताओं से प्रक्रियाओं दिखाएँ निचले बाएं कोने में" चेकबॉक्स
  4. प्रक्रिया सूची से aspnet_wp.exe , w3p.exe , या w3wp.exe का चयन करें
  5. "संलग्न करें" पर क्लिक करें

1
धन्यवाद, किसी भी तरह से आप जानते हैं कि विस्टा बिजनेस और IIS 7 में यह कैसे करना है?
मिहाई लजार

35
w3p.exe प्रक्रिया को देखने की कोशिश करें और ऊपर दिए गए चरणों का उपयोग करके इसे संलग्न करें
jerjer

2
@ मिहाई: विस्टा / विन 7/2008/2008 आर 2 में आपको डिबगर को चलाने की आवश्यकता होगी ताकि आप इसे करने में सक्षम हो सकें।
रिचर्ड

1
@ रीचर्ड एक और बात है जब कई ApplicationDomains होते हैं जिनमें से प्रत्येक एक और w3wp.exe उदाहरण शुरू करता है और मुझे उस पर नज़र डालने की आवश्यकता है जिसके लिए वर्तमान में मेरा कोड चल रहा है :)
Mihai Lazar

5
@MihaiLazar C:\windows\system32\inetsrv\appcmd list wpएप्लिकेशन पूल और उनकी प्रक्रिया आईडी को सूचीबद्ध करने के लिए चलाएं और पता लगाएं कि कौन से को संलग्न करना है। blogs.msdn.com/b/friis/archive/2009/10/22/…
नाथन

18

बस जिमी आर Houts जवाब स्पष्ट करने के लिए ...

यदि आप वेब एप्लिकेशन VS और IIS को डीबग करना चाहते हैं, तो आप निम्न कार्य कर सकते हैं:

  1. साइट को IIS (वर्चुअल डायरेक्टरी आदि) के अंदर होस्ट करें।
  2. फिर VS2005 में ऐसा करें:

    • वेब प्रोजेक्ट पर राइट क्लिक करें → गुण → प्रारंभ विकल्प → कस्टम सर्वर का उपयोग करें → बेस URL → साइट पता दर्ज करें जैसा कि IIS में होस्ट किया गया है।
    • मारो F5और आप अपने कोड को डीबग करने में सक्षम होंगे

वीएस 2008 के लिए भी यही काम करता है।


वर्षों से, मैं पुष्टि कर सकता हूं कि यह अभी भी नए IIS संस्करणों पर काम करता है (वर्तमान में विंडोज 10 के माध्यम से 10.0.18362.1 का उपयोग कर रहा है)। VS2010 में उपरोक्त कदम उठाए और सेवाओं को संलग्न किए बिना दूरस्थ रूप से डिबग करने में सक्षम था। इसके अलावा संलग्न करने के लिए w2p.exe, w3wp.exe, aspnet_wp.exe, donet.exe, या inetinfo.exe खोजने में असमर्थ है।
फेयंट

15

मैं IIS संस्करण 7.5 के साथ विंडोज 7 चला रहा हूं और "अटैच टू प्रोसेस" संवाद के तल पर - मुझे "सभी उपयोगकर्ताओं से प्रक्रिया दिखाएं" और "सभी सत्रों में प्रक्रिया दिखाएं" बॉक्स पर टिक करने की आवश्यकता है।

इसके अलावा मैंने अपने ऐप को एक विशिष्ट ऐप पूल में रखा था जिसका अर्थ है कि आप इसे w3wp.exe के खिलाफ लेबल देख सकते हैं।


5

IIS प्रक्रिया aspnet_wp.exe है।

वास्तव में, aspnet_wp.exe प्रक्रिया में संलग्न करना वही है जो वीएस करता है जब आपके पास डिबगिंग के लिए IIS का उपयोग करने के लिए आपका प्रोजेक्ट सेट होता है।


3

ASP.NET प्रक्रिया के संभावित नाम:

  • w3wp.exe IIS 6.0 और बाद का संस्करण है।
  • aspnet_wp.exe IIS के पुराने संस्करण हैं।
  • iisexpress.exe IISExpress है।
  • dotnet.exe ASP.NET Core है।
  • inetinfo.exe पुराने ASP अनुप्रयोग-प्रक्रिया में चल रहा है।

से ASP.NET प्रक्रिया का नाम खोजें


1

आपको नियंत्रण कक्ष> प्रशासनिक उपकरण से इंटरनेट सूचना सेवा खोलने की आवश्यकता होगी। प्रश्न में वेब साइट पर राइट क्लिक करें, होम डायरेक्टरी टैब पर क्लिक करें, और कॉन्फ़िगरेशन बटन चुनें। यह तीन टैब के साथ एक नया फॉर्म खोलेगा - डिबगिंग एक पर क्लिक करें और डिबगिंग फ्लैग सेक्शन में दो विकल्प चुनें। डिबग करना भी आवश्यक है।


2
इसके लिए केवल ASP कोड डीबग करना आवश्यक है। ASP.NET, ISAPI, ... और कोड जोड़ने के अन्य सभी साधनों को इसकी आवश्यकता नहीं है।
रिचर्ड

0

IIS प्लगइन ( VS2015 , VS2017 ) प्लगइन के साथ अटैच का उपयोग करने से कुछ क्लिकों की बचत होती है - विशेषकर जब IIS होस्ट किए गए साइटों के पारिस्थितिकी तंत्र के साथ काम कर रहा हो (एकाधिक बैकएंड सेवाओं के साथ एक फ्रंटेंड कहता है)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.