2010-05-09 8 views
5

मैं कार्य शेड्यूलर के माध्यम से एक कार्य को स्वचालित करने के लिए रूबी/वाटर/ऑटोआईट का उपयोग कर रहा हूं जो लॉग इन होने तक ठीक चलता है, लेकिन जैसे ही मेरा खाता लॉक हो या मैं लॉगआउट करता हूं, स्क्रिप्ट काम करना बंद कर देती है।क्या लॉग इन नहीं होने पर स्क्रिप्ट को शेड्यूल किए गए कार्य के रूप में चलाया जा सकता है?

जब मैं इसमें लॉग इन करता हूं वह है जहां ऑटोआईट को फ़ाइल डाउनलोड संवाद (सहेजने पर क्लिक करके, फिर फ़ाइल नाम दर्ज करना और फिर से सहेजने पर क्लिक करना) को संभालना होता है।

कोड लॉग इन करते समय निम्नलिखित कोड काम करता है। क्या ऑटो लॉग इन नहीं है जब मैं लॉग इन नहीं हूं, और क्या इसे पूरा करने का कोई और तरीका है?

prompt_message = "Do you want to save this file, or find a program online to open it?" 
window_title = "File Download" 
save_dialog = WIN32OLE.new("AutoItX3.Control") 

sleep 1 

save_dialog_obtained = save_dialog.WinWaitActive(window_title,prompt_message, 25) 
save_dialog.ControlFocus(window_title, prompt_message, "&Save") 

sleep 1 

save_dialog.Send("S") 
save_dialog.ControlClick(window_title, prompt_message, "&Save") 
save_dialog.WinSetTitle(window_title, prompt_message, "This is ForTesting") 
saveas_dialog_obtained = save_dialog.WinWait("Save As", "Save&in", 5) 

sleep 1 

path = fileName 
puts " Edit the file path" 
save_dialog.ControlSend("Save As", "", "Edit1",path) 
sleep 4 
puts " Save the file" 
save_dialog.ControlClick("Save As", "Save &in", "&Save") 
save_fileAlreadyExists = save_dialog.Send("Y") 

उत्तर

5

ऑटोस्ट्रेट स्क्रिप्ट जो कीस्ट्रोक भेजती हैं केवल तभी काम करेगी जब कोई लॉग इन हो और डेस्कटॉप अनलॉक हो।

आगे स्पष्टीकरण के लिए, कोई भी प्रोग्राम जो कीस्ट्रोक भेजता है केवल तभी काम करेगा जब कोई लॉग इन हो और डेस्कटॉप अनलॉक हो।

0

विंडोज़ में लॉग इन नहीं होने पर एक अलग विंडो सक्रिय होती है और इसलिए आप कोई विंडो संबंधित ऑपरेशन नहीं कर सकते हैं। लेकिन नियंत्रण आदेश अभी भी काम कर सकता है।

Related

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

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