मैन्युअल रूप से "प्रदर्शन बंद करें" को कैसे ट्रिगर किया जाए? [डुप्लिकेट]


13

मैं विंडोज 7 में "टर्न ऑफ डिस्प्ले" फ़ंक्शन को मैन्युअल रूप से कैसे ट्रिगर करूं? यह आमतौर पर स्वचालित रूप से होता है जब उपयोगकर्ता माउस को स्थानांतरित नहीं करता है या किसी निश्चित समय के लिए किसी कुंजी को दबाता है (नियंत्रण कक्ष का पावर प्रबंधन अनुभाग)।

थर्ड पार्टी सॉफ्टवेयर या एक पूर्ण विकसित अनुप्रयोग अच्छा है, लेकिन मैं विंडोज 7 के मूल निवासी को पसंद करूंगा। कमांड लाइन या कुछ और की तरह।


मॉनिटर नींद विकल्प के लिए मिनट के नीचे टाइम्स? यही कारण है कि मदद मिलेगी जब इस पद्धति लागू करने: answers.microsoft.com/en-us/windows/forum/windows_7-desktop/...
Andrestand

जवाबों:


8

पॉवर्सशेल में लिखी गई यह स्क्रिप्ट आपके लिए यह काम कर सकती है।

# Turn display off by calling WindowsAPI.

# SendMessage(HWND_BROADCAST,WM_SYSCOMMAND, SC_MONITORPOWER, POWER_OFF)
# HWND_BROADCAST  0xffff
# WM_SYSCOMMAND   0x0112
# SC_MONITORPOWER 0xf170
# POWER_OFF       0x0002

Add-Type -TypeDefinition '
using System;
using System.Runtime.InteropServices;

namespace Utilities {
   public static class Display
   {
      [DllImport("user32.dll", CharSet = CharSet.Auto)]
      private static extern IntPtr SendMessage(
         IntPtr hWnd,
         UInt32 Msg,
         IntPtr wParam,
         IntPtr lParam
      );

      public static void PowerOff ()
      {
         SendMessage(
            (IntPtr)0xffff, // HWND_BROADCAST
            0x0112,         // WM_SYSCOMMAND
            (IntPtr)0xf170, // SC_MONITORPOWER
            (IntPtr)0x0002  // POWER_OFF
         );
      }
   }
}
'

[Utilities.Display]::PowerOff()

नोट : इस टिप के लिए PowerShell 2.0 या इसके बाद के संस्करण की आवश्यकता है।


@ user1306322 सही है। स्क्रीन सेवर डिस्प्ले को बंद नहीं करता है।
लांस

@ user1306322 उत्तर को अपडेट कर दिया गया है।
stderr

एक बेहतर उत्तर की कमी के लिए मैं इसे स्वीकार कर रहा हूं। यह ध्यान दिया जाना चाहिए कि यह केवल तब उपयोगी है जब आप कंप्यूटर के साथ बातचीत नहीं कर रहे हैं। यही है, स्क्रीन को चालू रखने के लिए, आपको किसी भी बटन या माउस को छूने से रोकने की आवश्यकता है। इस कमांड को निष्पादित करने से पहले एक या दो सेकंड के लिए टाइमर सेट करना बहुत काम का हो सकता है।
user1306322

इसे एक .batफ़ाइल में सेट करना और डबल क्लिक करना काम नहीं करता है। या तो एपीआई बदल गया है या तो मुझे नहीं पता कि इसे कैसे निष्पादित किया जाए। इस स्क्रिप्ट के लिए "लॉन्च" विधि क्या है?
Xavi मॉन्टेरो

6

देशी समाधान नहीं - नि: शुल्क बाहरी कार्यक्रम Nircmd की आवश्यकता है । लेकिन यह बहुत उपयोगी है और इसका उपयोग करने के लिए कुछ भी नहीं लेता है।

मॉनिटर बंद करने के लिए:

nircmd.exe monitor off

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

nircmd.exe monitor on

4

मैं कई वर्षों के लिए मॉनिटर ऑफ यूटिलिटी का उपयोग करता हूं । मैंने एक शॉर्टकट संयोजन असाइन किया है और यदि मुझे डिस्प्ले अक्षम करना पसंद है तो उसे दबाएं।

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें


निश्चित नहीं है कि उत्तर को अस्वीकृत क्यों किया गया। उपयोगिता को प्रभावित करता है क्योंकि ओपी चाहता है
एजाज

क्या वास्तव में इस तरह का सॉफ्टवेयर कुछ कमांड कर सकता है? टाइमर बंद करने का संपादन करने के लिए कोई आदेश नहीं?
आंद्रेस्टैंड जूल

@Andrestand स्वीकृत उत्तर आपको दिखाता है कि कौन सा API उपकरण द्वारा आंतरिक रूप से उपयोग किया जाता है।
Magicandre1981

-1

प्रयत्न

%SystemRoot%\System32\RUNDLL32 %SystemRoot%\System32\USER32.DLL,LockWorkStation

आपको नियंत्रण कक्ष में जाने और अपनी स्क्रीन सेवर को "कोई नहीं" होने के लिए कॉन्फ़िगर करने की आवश्यकता हो सकती है।


यह केवल वही करता है जो LockWorkStationकमांड नाम सुझाता है - वर्तमान उपयोगकर्ता के सत्र को लॉक करता है। वही प्रभाव [विन] + [एल] दबाकर प्राप्त किया जा सकता है।
user1306322
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.