2009-07-16 13 views
21

मुझे आईआईएस 7 (विंडोज 2008) द्वारा पेश की जाने वाली क्लासिक एएसपी साइट डीबग करना है।क्लासिक एएसपी कैसे डिबग करते हैं?

मैं यह कैसे कर सकता हूं? मैंने केवल एएसपी.नेट के साथ काम किया है।

उत्तर

34

एक MSDN ब्लॉग पोस्ट से: http://blogs.msdn.com/mikhailarkhipov/archive/2005/06/24/432308.aspx

यहाँ एएसपी डिबगिंग काम करने के लिए कैसे:

  1. सर्वर पर एएसपी डीबगिंग सक्षम करें। (मैंने एएसपी एक्सटेंशन में DEBUG क्रिया भी जोड़ा, लेकिन मुझे यकीन नहीं है कि यह आवश्यक है)।
  2. वीएस 2005 में क्लासिक एएसपी खोलें।
  3. ब्रेकपॉइंट सेट करें।
  4. ब्राउज़र में पृष्ठ देखें या डिबगिंग के बिना चलाएं।
  5. डीबग | प्रक्रिया
  6. आईआईएस एएसपी कार्यकर्ता प्रक्रिया (IIS6 पर w3wp.exe) का पता लगाएं जो x86 और स्क्रिप्ट का खुलासा करता है और स्क्रिप्ट के रूप में संलग्न होता है।

eddiegroves से नीचे टिप्पणी:

IIS7 में कदम # 1 के बारे में - आईआईएस> एएसपी> संकलन> डिबगिंग गुण> सक्षम सर्वर साइड डिबगिंग

+6

चरण # 1: सर्वर पर एएसपी डीबगिंग सक्षम करें ..... आप यह कैसे करते हैं ?! –

+3

मुझे नहीं पता। लेकिन Google की पहली हिट आशाजनक लग रही है: http://technet.microsoft.com/en-us/library/cc738693(WS.10).aspx –

+0

मैं इसे एक शॉट दूंगा। धन्यवाद। –

2

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

https://github.com/dmeagor/ClassicASP-FirePHP

एमआईटी ओपन सोर्स लाइसेंस

+0

यह अब तक का सबसे अच्छा समाधान है! धन्यवाद! यह काम करने के लिए थोड़ा सा लगा कि "" firedebug.inc या प्रत्येक फ़ाइल को "" लेकिन एक बार हल हो जाने पर यह एक आकर्षण की तरह काम करता था! – GazB

+3

शायद यह मदद करेगा। टीम रिमोट एएसपी डीबगर (http://www.remotedebugger.com) आज़माएं। मैं वर्षों से क्लासिक एएसपी डीबग कर रहा हूं। –

+0

मुझे इसके लिए काम करना अच्छा लगेगा, लेकिन जैसे ही मैं "लॉग" कहने की कोशिश करता हूं, मुझे एक त्रुटि मिलती है: 'टाइप मिस्चैच:' toJson '/lib/asp/ClassicASP-FirePHP/1.2/firedebug.inc, लाइन 72' । क्या यह अभी भी फायरबग दुनिया के बाद काम करता है? क्या यह मानक एफएफ/क्रोम कंसोल में काम करता है? –

5

के तहत जारी मुझे पता है यह पुराना है, लेकिन सोचा था कि मैं दूसरों की मदद करने के बाद से मैं कुछ देख रहा था और कुछ ऊपर उत्तर चाहते हैं।

क्लासिक एएसपी डीबग करने के लिए आप विजुअल स्टूडियो का उपयोग कर सकते हैं।

आप आईआईएस की स्थानीय प्रतिलिपि चला रहे हैं, सिर्फ डिबगर w3wp.exe प्रक्रिया को आदि देते हैं और आप विच्छेदबिंदु सेट कर सकते हैं, चर जोड़ें खिड़कियों को देखने के लिए,

आप 1 से अधिक वेबसाइट है, तो , प्रत्येक को एक अलग एप्लिकेशन पूल में चलाने में मददगार होता है, और आप अटैच प्रोसेस विंडो में विभिन्न w3wp.exe प्रक्रिया की पहचान करने में सक्षम होंगे।

बस "स्क्रिप्ट" को डीबगर प्रकार के रूप में चुनें। यदि आप IISExpress चला रहे हैं, तो iisexpress.exe प्रक्रिया संलग्न करने के लिए सही है।

3

मैं पाया है कि सक्षम करने के लिए एक उपयोगी सेटिंग के तहत एएसपी>संकलन>डिबगिंग गुण सर्वर के स्तर पर पाया जाता है>ब्राउज़र करने के लिए त्रुटियों भेजें। इसे "सही" पर सेट करें।

यह सभी परिस्थितियों में उपयुक्त नहीं हो सकता है (उदा। इंटरनेट-सुलभ साइट के लिए)।

+0

क्या ऐसा करने के लिए है लेकिन त्रुटियों को लॉग फ़ाइल में भेजना है? –

+1

@ बेंजामिन गुडैक्रे आईआईएस 7.5 में, * एएसपी * अनुभाग के तहत एक सर्वर-स्तरीय सेटिंग है * नाम लॉग त्रुटि अनुरोध सक्षम करें * और विवरण "यह नियंत्रित करता है कि वेब सर्वर विंडोज इवेंट लॉग के अनुप्रयोग खंड में एएसपी त्रुटियों को लिखता है या नहीं। डिफ़ॉल्ट रूप से क्लाइंट ब्राउज़र और आईआईएस लॉग फ़ाइलों को त्रुटियां लिखी जाती हैं। " तो आईआईएस द्वारा त्रुटियों को पहले ही लॉग किया जाना चाहिए। –

0

इस तरह से मैं यह समझ से बाहर है:

जगह है जहाँ आप डिबग बिंदु हिट करने के लिए चाहते हैं पर रोक (लिखने बंद) रखो। फिर ब्राउज़र पर एप्लिकेशन चलाएं। जब निष्पादन रोकने के लिए आता है तो यह विजुअल स्टूडियो के साथ डीबग करने के लिए डीबग पॉपअप खोल देगा (एक वीएस संस्करण स्थापित होना चाहिए)। फिर यह प्रक्रिया को संलग्न करने के लिए कहेंगे और आप चरण 10 पर जाने के लिए f10, f11 का उपयोग कर सकते हैं। आप ऐड घड़ी का उपयोग कर डेटा देख सकते हैं।

0

मैं एक लॉग फ़ाइल लिखने के लिए निम्नलिखित (जो मुझे कहीं से ऑनलाइन मिला) का उपयोग करता हूं। मैं सीधे फ़ायरफ़ॉक्स या क्रोम में कंसोल पर लिखने के लिए एक विधि पसंद करूंगा, लेकिन यह मेरे लिए बहुत अच्छा काम करता है।

नोट: "टाइमस्टैम्प" मेरा एक कस्टम कार्य है। आप शायद अनुमान लगा सकते हैं कि यह क्या करता है, और शायद अपना खुद का रोल करें। ;-)

function error_log(message) 
    dim objFSO, objLog 
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
    Set objLog = objFSO.OpenTextFile("ASP_errors.log", 8, true) 
    objLog.WriteLine "[" & timestamp & "] VBS Message: " & message 
    objLog.close 
    set objLog = nothing 
    set objFSO = nothing 
end function 
संबंधित मुद्दे