विंडोज अनुसूचित कार्य त्रुटि कोड 0xc000013a के साथ पूरा करने में विफल रहता है


11

मैं Windows Server 2003 का उपयोग कर रहा हूं और एक निर्धारित कार्य है जो पूरा करने में विफल रहता है। प्रत्येक दिन दोपहर 3 बजे विंडोज कमांड स्क्रिप्ट (.cmd) चलाने के लिए कार्य निर्धारित है। स्क्रिप्ट एक प्रोग्राम चलाता है जो SQL सर्वर डेटाबेस से कुछ डेटा निकालता है और उस डेटा को एक FTP सर्वर पर अपलोड करता है।

निर्धारित कार्य फ़ोल्डर के "अंतिम परिणाम" कॉलम में प्रदर्शित त्रुटि कोड 0xc000013a है। एक त्वरित Google खोज इस Microsoft समर्थन पृष्ठ की ओर जाता है जो बताता है: सबसे आम "C" त्रुटि कोड "0xC000013A: CTRL + C" के परिणामस्वरूप समाप्त किया गया अनुप्रयोग है।

जिस समय कार्य चलता है, उस समय कोई भी व्यक्ति लॉग-इन नहीं करता है, इसलिए CTRL + C को दबाने के लिए कोई भी नहीं है। मुझे यकीन नहीं है कि मैं समझता हूं कि Microsoft प्रलेखन में यहां क्या कहा जा रहा है।

मैंने अल्पविकसित चीजों की जाँच की है - निर्धारित कार्य सक्षम है, प्रत्येक दिन चलाने के लिए अनुसूचित है, और एक मान्य स्थान पर मौजूद फ़ाइल की ओर इशारा करता है। दिलचस्प है, जब मैं इस कार्य को मैन्युअल रूप से चलाता हूं (या तो कमांड लाइन से .cmd स्क्रिप्ट चलाकर, या कार्य को राइट-क्लिक करके और "रन" पर क्लिक करके) कार्य सफलतापूर्वक पूरा होता है।

इस त्रुटि कोड का क्या मतलब है, और जब मैं इसे लागू करने के लिए नहीं हूं तो मुझे यह कार्य कैसे मिल सकता है?


अपने आप से अंत स्क्रिप्ट में एक निकास कोड जोड़ने का प्रयास करें (जैसे exit 0)। यदि यह अभी भी विफल रहता है, तो यह अपने आप विफल हो रहा है। यदि नहीं, तो यह सिर्फ एक फर्जी एग्जिट कोड था जिसे कार्य अनुसूचक द्वारा गलत तरीके से समझा गया था।
bjoster

जवाबों:


6

समस्या निवारण की निर्धारित स्क्रिप्ट:

  1. यदि आप पहले से नहीं है, तो उन्नत > दृश्य लॉग के तहत GUI में अनुसूचित कार्य लॉग फ़ाइल की जाँच करें । सबसे हाल की प्रविष्टियों को खोजने के लिए " " के लिए फ़ाइल खोजें , और आपको थोड़ी अतिरिक्त त्रुटि जानकारी दिखाई दे सकती है।***

  2. आउटपुट पर कब्जा करने के लिए एक लॉग फ़ाइल को परिभाषित करें, और वहां मानक आउट और मानक त्रुटि दोनों भेजें। किसी भी बदले गूंज बंद करने के लिए गूंज पर सुनिश्चित करें कि आप किसी भी त्रुटि संदेश दबाकर नहीं कर रहे हैं हो सकता है।
    उदाहरण के लिए, यदि आपकी स्क्रिप्ट को कॉल किया जाता है, ftp.data.cmdतो आपका निर्धारित कार्य इस तरह दिखाई दे सकता है,

    cmd /c ftp.data.cmd >> ftp.data.log 2>&1

  3. क्या स्क्रिप्ट लटकी हुई है? हो सकता है कि कार्य अनुसूचक कुछ निर्दिष्ट अवधि के बाद स्क्रिप्ट (इसलिए CTRL + C त्रुटि कोड) को मार रहा हो। इनमे से कुछ को अपने स्काइप में रणनीतिक बिंदुओं पर जोड़ें,

    echo %DATE% %TIME%

  4. क्या आप सुनिश्चित हैं कि स्क्रिप्ट चलाने वाले खाते की स्क्रिप्ट में सब कुछ करने की अनुमति / पहुंच है?

  5. यदि आपको कोई खुशी नहीं मिल रही है, तो इस कमांड को चलाएं और यहां आउटपुट पोस्ट करें, हो सकता है कि हम शेड्यूलिंग के साथ शुरू कर सकते हैं,

    schtasks /query /v /fo LIST /s YOURSERVER


4

मैं सीधे सवाल का जवाब नहीं दे सकता क्योंकि मैं विशेष रूप से नहीं जानता कि त्रुटि संदेश का क्या मतलब है (न ही, इसलिए, इसे कैसे ठीक करें), लेकिन अगर मैं इसे समस्या निवारण करने की कोशिश कर रहा था, तो मैं लॉग फ़ाइल में कुछ लिखूंगा स्क्रिप्ट में रणनीतिक बिंदु और फिर निर्धारित समय के बाद देखें कि चलाने के लिए अंतिम चेकपॉइंट क्या है।

मेरा संदेह यह होगा कि स्क्रिप्ट के तहत चल रही साख के कारण कुछ ऐसा है जो विफल हो रहा है या स्क्रिप्ट में कुछ लॉग-इन उपयोगकर्ता की आवश्यकता है। नीचे की ओर जहां स्क्रिप्ट की चीजों में असफलता आपको "अपमानजनक" कोड खोजने में मदद कर सकती है।


2

मुझे लगता है कि यह एक पुरानी पोस्टिंग है, लेकिन वे बहुत उपयोगी होते हैं जब समाधान खोजते हैं और शायद जो मुझे मिला वह उपयोगी भी हो सकता है। मैं एक ftp सर्वर पर अपलोड करने के लिए Windows Server 2003 पर WinSCP का उपयोग कर रहा था और एक ही त्रुटि संदेश प्राप्त किया और SchedLgU.txt फ़ाइल ने "कार्य को रोकें यदि वह इसके लिए प्रस्तुत हो तो पर्याप्त समय न होने की ओर इशारा किया:" भले ही मैंने कार्य दिया हो अपलोड करने के लिए बहुत समय।

टास्क मैनेजर में देखते हुए मैं देख सकता था कि WinSCP.exe क्लियर नहीं हो रहा था और मेरे पास सूची में बहुत सारी प्रक्रियाएँ थीं, इसलिए मैंने किसी भी खुली प्रक्रिया को मारने के लिए एक बैच फ़ाइल (टास्किल / f / im wincp.exe) बनाई और मैंने उस बैच फ़ाइल को WinSCP से पहले चलाया जाता है और यह अब अच्छी तरह से काम करती है।


2

मैं आज एक रिमोट सर्वर पर इस में भाग गया, और समाधान रन सेटिंग को "केवल तभी चलाएं जब उपयोगकर्ता लॉग ऑन हो" से "रन करें कि उपयोगकर्ता लॉग इन है या नहीं"।

"केवल तभी चलाएं जब उपयोगकर्ता लॉग ऑन होता है" कार्य एक कमांड विंडो लॉन्च करता है जिसे बंद कर दिया गया था जब मेरा दूरस्थ डेस्कटॉप सत्र समाप्त हो गया था। "रन चाहे उपयोगकर्ता लॉग इन हो या न हो" कार्य के चलने के दौरान कोई विंडो प्रदर्शित नहीं होती है, इसलिए जब मेरा रिमोट डेस्कटॉप समाप्त हो जाता है तो निष्पादन बंद नहीं होता है।


1

Cori के उत्तर के समान, मैं आपको सलाह दूंगा कि आप निर्धारित कार्य को चलाने के लिए निर्धारित करें, जैसा कि मैंने देखा है कि यह त्रुटि तब हुई है जब उपयोगकर्ता खाता जो कार्य चला रहा है, उसमें वैसी ही अनुमतियाँ नहीं हैं जैसी कि उपयोगकर्ता में लॉग इन की गई हैं।


1

यदि यह पहले चला, तो शायद नेटवर्क आउटेज जैसी स्थिति या किसी अन्य होस्ट की समस्या विफलता को स्पष्ट कर सकती है।


1

मेरे पास एक ही त्रुटि थी और ऐसा इसलिए था क्योंकि मैं जिस बैच फ़ाइल को चला रहा था, वह कुछ फ़ाइलों के लिए DEL कमांड के साथ हटाने के लिए प्रेरित कर रही थी। चूंकि Y / N का जवाब देने के लिए कोई उपयोगकर्ता नहीं है, इसलिए निर्धारित कार्य समाप्त हो गया है। निम्नलिखित संदेश मैं अपने निर्धारित कार्य लॉग पर पाया गया है: "कार्य समाप्त कर दिया गया था। यह कार्रवाई किसी व्यवस्थापक द्वारा या कार्य शेड्यूलर सेवा द्वारा शुरू की गई थी (क्योंकि, उदाहरण के लिए, कंप्यूटर अब गैर निष्क्रिय है)।" मेरी अनुशंसा कार्य को मैन्युअल रूप से कमांड प्रॉम्प्ट से यह देखने के लिए है कि यह कहां रुक रहा है या कुछ उपयोगकर्ता सहभागिता के लिए संकेत दे रहा है, इसे सही करें और आपका कार्य ठीक चलेगा।


1

यदि आप कार्य शेड्यूलर नियंत्रण के तहत प्रोग्राम को चलाने का प्रयास कर रहे हैं, तो System.Environment.CurrentDirectory C: \ Windows \ System32 वापस आ जाएगी, न कि जहां आपका निष्पादन योग्य स्थित है। यह त्रुटि एक फ़ाइल नहीं मिली त्रुटि हो सकती है; मैं एक उपनिर्देशिका में प्रवेश करने की कोशिश कर रहा था और यह System32 के पेड़ में मौजूद नहीं था।


0

मेरी लिपियों में यह स्पष्ट है। ऐसा होता है क्योंकि मेरे पास बैच फ़ाइल के अंत में "पॉज़" है और निर्धारित कार्य 20 मिनट तक सीमित है। जब उपयोगकर्ता मौजूद है, हाय नौकरी के प्रवाह को देख सकता है। जब बैच फ़ाइल 20 मिनट के बाद निर्धारित कार्य से समाप्त नहीं होती है। यह 0xc000013a पैदा कर रहा है और यह ठीक है।


0

मेरे पास एक ही मुद्दा था और "ऑन सिस्टम स्टार्टअप" से "लॉगऑन" पर ट्रिगर को बदलकर इसे ठीक किया।


0

एक ही समस्या थी .. उपयोगकर्ता के साथ खेलने के द्वारा तय की गई जो अनुसूचित कार्य को चलाने के लिए पंजीकृत है। अंत में, डोमेन को बदलना जवाब था।

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