2011-09-04 14 views
5

मैं/बंद एक डेल्फी स्क्रिप्ट से मेरी नज़र रखता है पर बारी, Windows XP से 7 करने के लिए सक्षम होना चाहता था।मॉनिटर चालू/बंद कैसे करें?

मैंने डेल्फी अनुभाग stackoverflow पर खोजा है और उत्तर नहीं मिला।

मुझे कई नमूने भी मिले जो विंडोज 7 (केवल एक्सपी के साथ) पर काम नहीं करते हैं।

+1

:

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_OFF); 

मॉनिटर चालू करने के लिए:

const MONITOR_ON = -1; MONITOR_OFF = 2; MONITOR_STANDBY = 1; 

की निगरानी बंद करने के लिए "डेल्फी लिपि से मेरे मॉनीटर चालू/बंद करने के लिए" पहले परिणाम सभी के लिए googling "बहुत अधिक सूची" यो यू "समाधान। – Mat

+0

मैं मैट से सहमत हूं; मैं बस इसे जोड़ता हूं क्योंकि मुझे इसे स्टैक ओवरफ्लो पर नहीं मिला (और जैसा कि मैंने पढ़ा है [यह] (http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your -उन-प्रश्न /)) ... – Whiler

+1

मेरा ['टीएस सिस्टमस्टेट'] (http://specials.rejbrand.se/dev/classes/systemstate/readme.html) यह करता है। –

उत्तर

8

मैं सफलतापूर्वक Windows XP और विंडोज 7 पर इस परीक्षण किया है:

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, MONITOR_ON); 
+0

यदि आपको पता है कि यह प्रसारण के साथ क्यों लटकता है ... मैंने एप्लिकेशन के साथ प्रयास किया। प्रोसेस मैसेज; बेहतर परिणाम के बिना! – Whiler

+1

आपको शायद SendMessage के बजाय PostMessage का उपयोग करने की आवश्यकता है। – tinman

+0

मैं बस इसका परीक्षण करता हूं! और यह काम करता है! आपका बहुत बहुत धन्यवाद! मैं अपने उत्तर के दूसरे भाग को अद्यतन करता हूं। – Whiler

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