कुछ दिनों पहले मैंने पहली बार देखा कि मेरा एक VBscripts शुरू होने के कुछ सेकंड बाद ही बंद हो गया। पता चलता है कि wscript.exe प्रक्रिया बनने के बाद लगभग 5 सेकंड के लिए बंद हो जाती है। यह बहुत सटीक है। मैंने एक परीक्षण स्क्रिप्ट लिखी है:
wscript.sleep 4800
wscript.echo "hi"
मैं टास्कमैनगर में wscript.exe प्रक्रिया देखता हूं, मैं 4.8 सेकंड इंतजार करने के बाद एक विभाजन दूसरे के लिए संदेश बॉक्स देखूंगा। और फिर यह (और प्रक्रिया) गायब हो जाता है। 5200 में समय बदलना और मुझे संदेश बॉक्स कभी नहीं दिखाई देगा।
और यहाँ अजीब बात है: समय को 5000 तक सेट करना, इस प्रक्रिया को भी अधिकांश समय मार दिया जाएगा, लेकिन मैंने 3 बार देखा है जो नहीं मारा गया था। जब तक मैंने ओके पर क्लिक नहीं किया, तब तक यह प्रक्रिया गायब नहीं होगी।
Wscript.exe और cscript.exe के लिए समान व्यवहार
एक्सप्लोरर से vbs पर डबल क्लिक करना, या व्यवस्थापक- cmd.exe से vbs चलाना कोई फर्क नहीं पड़ता
मैं सुरक्षा अनिवार्यता का उपयोग कर रहा हूं (और लंबे समय तक)
HijackThis इस लाइन को दिखाता है (जो हमेशा से नहीं रहा है): O4 - HKLM .. \ RunOnce: [Malwarebytes Anti-Malware] C: \ Program Files (x86) \ Malwarebytes का 'एंटी-मैलवेयर "mbamgui.exe / install / sil ( mbamgui.exe हालांकि एक चलने वाली प्रक्रिया नहीं है)
जब सीएससी आउटपुट के साथ चलाया जाता है:
d: \ temp> cscript tst.vbs
Microsoft (R) विंडोज स्क्रिप्ट होस्ट संस्करण 5.8
कॉपीराइट (C) Microsoft Corporation। सभी अधिकार सुरक्षित।हाय
स्क्रिप्ट निष्पादन समय स्क्रिप्ट पर पार कर गया था "d: \ अस्थायी \ tst.vbs"।
स्क्रिप्ट निष्पादन को समाप्त कर दिया गया।
नीचे दिया गया कोड भी केवल एक परिणाम दिखाता है यदि गणना समय 5 सेकंड से नीचे रखा गया है:
t1 = टाइमर
i = 1 से 25000000
x = Rnd () * Rnd ()
अगला
MsgBox टाइमर-t1
मेरी मशीन पर, 25000000 के साथ मैं परिणाम को एक दूसरे को देखता हूं, 30000000 के साथ परिणाम कभी नहीं दिखाया गया है।
क्या कोई तरीका है जो मेरे वीबीस्क्रिप्ट प्रक्रिया को मारने के लिए जिम्मेदार है?
//S
जो "उपयोगकर्ता के लिए वर्तमान कमांड लाइन विकल्प सेट करेगा"। मैंने इसका परीक्षण नहीं किया है लेकिन इसका तात्पर्य यह है कि यदि//T
(टाइमआउट) विकल्प के समान समय पर चलाया जाता है , तो यह T विकल्प को डिफ़ॉल्ट के रूप में संग्रहीत करेगा