प्रसंग
जब डिबगिंग एक दृश्य स्टूडियो समाधान, एक प्रक्रिया (डीबग मेनू F5 के साथ) MyApp.vshost.exe
कहा जाता है। मैं बंद करो डीबग मेनू शिफ्ट + F5 का उपयोग कर मतलब है और Application.Exit()
की तरह एक कोड लाइन के लिए इंतजार नहीं होता है - - इस प्रक्रिया को मार डाला नहीं है जब आप अशिष्टता से डिबग बंद करो।का समाधान "कमांड" taskkill/एफ/आईएम MyApp.vshost.exe "के साथ बाहर निकल गया कोड 128" त्रुटि
कभी-कभी, जब आप बाद में अपने एप्लिकेशन को डीबग करना शुरू करते हैं, तो एक त्रुटि संदेश होता है, यह कहकर कि फ़ाइल (जाहिर है, यह डीबग द्वारा उपयोग की जाने वाली फ़ाइल है: bin\Debug\MyApp.vshost.exe
) पहले से ही उपयोग में है।
है यही कारण है कि मैं घटनाओं बिल्ड को यह कमांड लाइन कहा: taskkill /F /IM MyApp.vshost.exe
समस्या
जब MyApp.vshost.exe
प्रक्रिया मौजूद नहीं है, दृश्य स्टूडियो कभी कभी का निर्माण समय में एक त्रुटि फेंक है, इस प्रकार का निर्माण करने को रोकने आवेदन:
Error c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets
The command "taskkill /F /IM MyApp.vshost.exe" exited with code 128.
बिल्डिंग ईवेंट को निकालने का एकमात्र मौजूदा समाधान है।
प्रश्न
वहाँ निर्माण घटना को हटाए बिना त्रुटि संदेश को हल करने के लिए एक रास्ता है?
संपादित
मैं सबसे अच्छा समाधान में सोच रहा हूँ, आदेश की वापसी कोड (errorlevel
) को पुनः प्राप्त करने तो लौट 0 अगर यह 128 के बराबर है होगा यह संभव घटनाओं बिल्ड में यह करने के लिए है परियोजना का?
क्या आप विस्तार कर रहे हैं कि आप क्या कर रहे हैं? उदाहरण के लिए, क्या आप ऑफिस इंटरऑप बिट्स के माध्यम से एक्सेल या वर्ड जैसे प्रक्रिया ऐप्स से बाहर इंटरफेसिंग कर रहे हैं? – Kev
@ केवी: मुझे अपने सभी अनुप्रयोगों में समस्या है - _विंडोज प्रोजेक्ट_ और _विंडोज़ सेवाएं_ और कुछ एक्सेल और न ही वर्ड के साथ काम नहीं कर रहे हैं। मेरे पास सबसे सरल ऐप एक ऐसी सेवा है जिसने एक एमएसएसएलएल डेटाबेस में टाइमर जांच की है और सरल कार्यों को निष्पादित किया है। – Otiel
किसी भी समाधान, एमएसबिल्ड का उपयोग कर इसी तरह की समस्या: एमएसबीयूआईएलडी: चेतावनी एमएसबी 3073: कमांड "डीएल" सी: \ क्लाइंट \ *। * "/ Q/f/s" कोड 128 के साथ निकल गया। – Kiquenet