วิธีเปิดใช้งาน“ ปิดจอแสดงผล” ด้วยตนเองได้อย่างไร? [ซ้ำ]


13

ฉันจะเรียกใช้ฟังก์ชัน "ปิดจอแสดงผล" ด้วยตนเองใน Windows 7 ได้อย่างไร สิ่งนี้มักเกิดขึ้นโดยอัตโนมัติเมื่อผู้ใช้ไม่ขยับเมาส์หรือกดปุ่มใด ๆ เป็นระยะเวลาหนึ่ง (ส่วนการจัดการพลังงานของแผงควบคุม)

ซอฟต์แวร์ของ บริษัท อื่นหรือแอปพลิเคชั่นเป่าเต็มรูปแบบเป็นสิ่งที่ดี แต่ฉันต้องการวิธีการดั้งเดิมสำหรับ Windows 7 เช่นเดียวกับบรรทัดคำสั่งหรือบางอย่าง


เวลาต่ำกว่านาทีสำหรับตัวเลือกการนอนหลับของจอภาพหรือไม่ ที่จะช่วยเมื่อใช้วิธีนี้:
answer.microsoft.com/en-us/windows/forum/windows_7-desktop/

คำตอบ:


8

สคริปต์นี้เขียนด้วย Powershell สามารถทำให้คุณทำงานได้

# 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ไฟล์และการดับเบิลคลิกไม่ทำงาน API มีการเปลี่ยนแปลงอย่างใดอย่างหนึ่งหรือฉันไม่ทราบวิธีการดำเนินการนี้ คาดว่าจะใช้วิธี "เรียกใช้งาน" สำหรับสคริปต์นี้อย่างไร
Xavi Montero

6

ไม่ใช่โซลูชันเนทีฟ - ต้องใช้โปรแกรมภายนอกNircmdฟรี แต่มันมีประโยชน์มากและไม่ได้ใช้อะไรเลย

วิธีปิดจอภาพ:

nircmd.exe monitor off

วิธีเปิดจอภาพ:

nircmd.exe monitor on

4

ฉันใช้Monitor Off Utilityเป็นเวลาหลายปี ฉันได้รับการรวมกันทางลัดและกดถ้าฉันต้องการปิดการใช้งานจอแสดงผล

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


ไม่แน่ใจว่าทำไมคำตอบถูกลดระดับลง การทำให้เอฟเฟ็กต์เป็นกลางขึ้นเนื่องจากยูทิลิตี้ทำในสิ่งที่ OP ต้องการ
Ejaz

ไม่ใช่ซอฟต์แวร์ประเภทนี้ที่ทำสิ่งที่คำสั่งบางอย่างสามารถทำได้ใช่หรือไม่ ไม่มีคำสั่งให้แก้ไขตัวจับเวลาปิด?
Andrestand

@Andrestand คำตอบที่ยอมรับจะแสดงให้คุณเห็นว่าเครื่องมือ API ตัวใดที่ใช้ภายใน
magicandre1981

-1

ลอง

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

คุณอาจต้องเข้าไปที่แผงควบคุมและกำหนดค่าตัวรักษาหน้าจอให้เป็น "ไม่มี"


สิ่งนี้ทำในสิ่งที่LockWorkStationชื่อคำสั่งแนะนำเท่านั้น - ล็อคเซสชันผู้ใช้ปัจจุบัน เอฟเฟกต์เดียวกันนี้สามารถทำได้โดยการกด [Win] + [L]
user1306322
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.