2012-01-16 11 views
5

मैं स्टार्टअप पर अपनी पायथन स्क्रिप्ट चलाने की कोशिश कर रहा हूं लेकिन मुझे त्रुटि संदेश विंडोज़ आतंक का उपयोग अस्वीकार कर दिया गया है, लेकिन मुझे बूट पर प्रोग्राम शुरू करने में सक्षम होना चाहिए क्योंकि टीमव्यूवर (एक तृतीय-पक्ष प्रोग्राम जिसे मैंने डाउनलोड किया) हर बार जब मैं पुनरारंभ करता हूं मेरा कंप्यूटर इसलिए मुझे पता है कि मुझे स्टार्टअप पर अपना प्रोग्राम चलाने में सक्षम होना चाहिए (हालांकि मैं कुछ अलग कर रहा हूं, इसलिए यदि आप स्टार्टअप पर अपनी स्क्रिप्ट चलाने के लिए अलग-अलग टीमवियर अलग-अलग कर रहे हैं तो कुछ प्रकाश डाल सकते हैं उपयोगी)।स्टार्टअप रजिस्ट्री में मैं एक पायथन स्क्रिप्ट कैसे जोड़ूं?

यहाँ मेरी स्क्रिप्ट

import _winreg, webbrowser 
key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,'Software\Microsoft\Windows\CurrentVersion\Run') 
_winreg.SetValueEx(key,'pytest',0,_winreg.REG_BINARY,'C:\Users\"USERNAME"\Desktop\test.py') 
key.Close() 
webbrowser.open('www.youtube.com') 

किसी भी इनपुट की सराहना की है।

+3

क्यों आप बस इसे अपने स्टार्टअप फ़ोल्डर में शामिल नहीं करते हैं? यदि '.py' फ़ाइलें पाइथन दुभाषिया से जुड़ी हैं, तो उन्हें ठीक काम करना चाहिए – wim

+0

क्या आपका मतलब है" जब मैं अपने कंप्यूटर में लॉग इन करता हूं "या" पृष्ठभूमि में चलाएं "? py2exe का उपयोग कंप्यूटर बनाने के दौरान चलाने वाली सेवाओं को बनाने के लिए किया जा सकता है। स्टार्टअप फ़ोल्डर में अपनी स्क्रिप्ट डालने पर काम करता है यदि आप इसे अपने उपयोगकर्ता खाते के लिए चलाने के लिए चाहते हैं। –

उत्तर

5
import webbrowser 
webbrowser.open('www.youtube.com') 

उस _winreg सामग्री से छुटकारा पाएं। इसके बजाए, आप (एक पीई फ़ाइल पर डबल-क्लिकिंग मानते हुए कंसोल खोलता है) इसे बस अपने स्टार्टअप फ़ोल्डर में रखें (विंडोज 7 पर C:\Users\yourusername\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup, और C:\Documents and Settings\yourusername\Start Menu\Programs\Startup एक्सपी में)। यह काम करता है क्योंकि विंडोज स्टार्टअप फ़ोल्डर में सभी फाइलें खोलने की कोशिश करता है, और अगर पाइथन डिफ़ॉल्ट रूप से पीवाई खोलता है, तो विंडोज पायथन कंसोल खोल देगा। पुनरारंभ करने का प्रयास करें, जो काम करना चाहिए।

1

बाबून: मैं थोड़ी देर से पोस्टिंग कर रहा हूं, लेकिन ऐसा लगता है कि आपने यहां अपने कोड के अंत में सैम को छोड़ दिया है।

जब आप एक कुंजी आप, उपयोगकर्ता अधिकार को जोड़ने के लिए यदि आप चूक "पढ़ें" करने के लिए _winreg नहीं है जरूरत खोलें:

यहाँ अजगर साइट से एक टुकड़ा है http://docs.python.org/2/library/_winreg.html#access-rights

सैम एक पूर्णांक है जो एक एक्सेस मास्क निर्दिष्ट करता है जो कुंजी के लिए वांछित सुरक्षा पहुंच का वर्णन करता है। डिफ़ॉल्ट KEY_READ है। अन्य अनुमत मानों के लिए एक्सेस अधिकार देखें।

यहाँ कोड में सुधार किया जाए:

import _winreg, webbrowser 
    key = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER,'Software\Microsoft\Windows\CurrentVersion\Run',_winreg.KEY_SET_VALUE) 
    _winreg.SetValueEx(key,'pytest',0,_winreg.REG_BINARY,'C:\Users\"USERNAME"\Desktop\test.py') 
    key.Close() 
webbrowser.open('www.youtube.com') 
संबंधित मुद्दे