2013-10-22 8 views
11

मैं सी # में लिखे गए मानक विंडोज़ फॉर्म एप्लिकेशन के लिए एक विजुअल स्टूडियो रिमोट डीबगिंग सत्र स्थापित कर रहा हूं।रिमोट डीबगिंग: किसी भिन्न कंप्यूटर पर डिबगिंग प्रक्रिया को कैसे शुरू करें

इंटरनेट पर दूरस्थ कंप्यूटर और MSVCMON.EXE को सेट अप करने के बारे में कई कहानियां हैं, लेकिन मुझे यह सुनिश्चित करने के लिए मेरे कंप्यूटर पर क्या करना है, इस बारे में कोई कहानियां नहीं मिल रही हैं कि मेरा प्रोग्राम डीबग किया गया है जब मैं स्टार्ट डिबगिंग दबाता हूं तो रिमोट कंप्यूटर।

तो रिमोट डीबगिंग संभव बनाने के लिए मुझे क्या करना चाहिए?

उत्तर

11

कुछ शोध के बाद मुझे यह पता चला है कि यह कैसे करना है, भले ही आप ऐसी कंपनी में काम कर रहे हों जिसमें फ़ायरवॉल आदि के साथ बहुत से सुरक्षा समस्याएं हों। आईटी विभाग से मुझे केवल एक चीज की आवश्यकता है जो दोनों कंप्यूटरों पर प्रशासक अधिकार है ।

आवश्यक:

  • प्रयुक्त Visual Studio 2012 प्रोफेशनल में इस विधि, विजुअल स्टूडियो 2013 अंतिम
  • स्थानीय कंप्यूटर और दूरस्थ कंप्यूटर दोनों एक ही डोमेन थे में कुछ साल बाद फिर से परीक्षण किया
  • मैं डोमेन पर एक सदस्य के रूप में लॉग इन

यह करने के लिए कैसे:

  • दूरस्थ कंप्यूटर पर: अपने सामान्य खाते का उपयोग करके लॉग इन करें। यदि यह पहली बार है कि आपके लिए एक नया वातावरण बनाया गया है।
  • दूरस्थ कंप्यूटर पर: आपके पास व्यवस्थापक अधिकार
  • दूरस्थ कंप्यूटर पर है सुनिश्चित करें: "C: अपने दृश्य स्टूडियो
  • अपने कंप्यूटर पर के दूरस्थ डीबगिंग फ़ोल्डर खोजने के इस था सक्षम दूरस्थ डेस्कटॉप
  • स्थानीय कंप्यूटर पर: \ Program Files (x86) \ माइक्रोसॉफ्ट विजुअल स्टूडियो 11.0 \ Common7 \ IDE \ रिमोट डीबगर "
  • की नकल की से msvsmon.exe चलाने दूरस्थ कंप्यूटर पर दूरस्थ कंप्यूटर पर एक समान (ढूंढने योग्य) फ़ोल्डर में कॉपी इस फ़ोल्डर
  • फ़ोल्डर
  • पहली बार यह कुछ स्थापना करेगा। यह फ़ायरवॉल
  • उपयोग उपकरण विकल्प बदलें कि - विंडोज प्रमाणीकरण
  • उपयोग उपकरण अनुमतियां वाकई डीबग अधिकार

msvsmon.exe कार्यक्रम अब नए कनेक्शन के लिए इंतजार किया जाना चाहिए है कि एक उपयोगकर्ता हैं बनाने के लिए। स्थानीय कंप्यूटर पर 4016

अब जहां दृश्य स्टूडियो का उपयोग कर अपने कार्यक्रम का विकास होगा निम्नलिखित है

    : "पोर्ट संख्या", उदाहरण के Prototype1 के लिए: सर्वर का नाम की तरह "दूरस्थ कंप्यूटर का नाम" कुछ है
  • खुला दृश्य स्टूडियो, समाधान लोड
  • यदि आपने ऐसा नहीं किया: स्टार्टअप परियोजना सेट (सही स्टार्टअप परियोजना और स्टार्टअप परियोजना
  • प्रारंभ विन्यास प्रबंधक के रूप में चयन प्रारंभ पर क्लिक करें (के आगे वाले तीर पर क्लिक करें डीबग/रिलीज चयन के साथ combobox और configuraton प्रबंधक का चयन करें ...)
  • विन्यास प्रबंधक "सक्रिय समाधान विन्यास" में नया चयन करें। नई कॉन्फ़िगरेशन को उचित नाम दें, और इसे डीबग (संभवतः)
  • से एक प्रतिलिपि बनाएं जब आप अपने रिमोट डीबगिंग के लिए कोड बनाते हैं, तो आपको नई कॉन्फ़िगरेशन चुननी होगी।
  • इस नई कॉन्फ़िगरेशन की कुछ सेटिंग्स को बदलने की आवश्यकता है। उदाहरण के लिए, आपको यह सुनिश्चित करना होगा कि परिणाम कोड बनाने के बाद रिमोट कंप्यूटर पर है। स्टार्ट-अप प्रोजेक्ट के गुणों को डबल क्लिक करना और बिल्ड टैब का चयन करना सबसे आसान तरीका है। रिमोट कंप्यूटर पर उस स्थान पर bin \ debug से आउटपुट पथ बदलें जहां आप कोड चाहते हैं। उदाहरण के लिए: \ प्रोटोटाइप 1 \ उपयोगकर्ता \ Harald \ दस्तावेज़ \ CameraTestProgram \
  • उसी गुण प्रपत्र में, डीबग टैब पर, डीबग सत्र का कौन सा कंप्यूटर होना चाहिए: चेक करें: दूरस्थ मशीन का उपयोग करें "और उसी नाम को भरें msvsmon.exe में के रूप में मेरे उदाहरण में:। अपने विंडोज़ प्रपत्र नियंत्रित करने के लिए 4016
  • दृश्य स्टूडियो में अपने कोड का निर्माण, अपने breakpoints सेट और डिबगिंग शुरू
  • उपयोग दूरस्थ डेस्कटॉप कनेक्शन
: टाइप Prototype1।।।

यह विधि काम करती है यदि आप सी # में लिखे गए एक सामान्य विंडोज़ फॉर्म एप्लिकेशन को डीबग करना चाहते हैं। मुझे पता चला है कि अगर आप असुरक्षित कोड का उपयोग करते हैं तो यह भी काम करता है। मुझे चेतावनियां हालांकि यदि आपके प्रोग्राम में सी ++ कोड है, लेकिन उन्हें अनदेखा किया जा सकता है।

इस के लिए

माइक्रोसॉफ्ट लिंक (काम अक्टूबर 2013 और अभी भी अगस्त 2015 में): Microsoft description on how to setup remote debugging यह लिंक जून 2017

Microsoft: how to set up remote debugging पर अब और काम नहीं करता है जून में 2017

+0

बहुत उपयोगी वर्णन है कि मिल गया काम मुझे सही रास्ते पर। मैं एक वेबसाइट डीबग कर रहा था और मुझे बस सर्वर पर "रिमोट डीबगर" फ़ोल्डर की प्रतिलिपि बनाने की आवश्यकता है, सर्वर पर MsvsMon.exe प्रोग्राम (व्यवस्थापक के रूप में) चलाएं। ": 4108 सर्वर" तो फिर अपने स्थानीय सिस्टम पर वी.एस. 2013 में मैं सिर्फ "डीबग/प्रक्रिया के लिए अनुलग्न" का चयन करें और के रूप में क्वालीफायर क्षेत्र निर्दिष्ट करने के लिए की जरूरत है। फिर यह रिमोट सर्वर पर प्रक्रियाओं को सूचीबद्ध करेगा और मैं w3wp.exe से संलग्न कर सकता हूं। – RonnBlack

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