Bagaimana cara memicu "matikan tampilan" secara manual? [duplikat]

13

Bagaimana cara memicu fungsi "matikan tampilan" secara manual di Windows 7? Ini biasanya terjadi secara otomatis ketika pengguna tidak menggerakkan mouse atau menekan tombol apa pun untuk jangka waktu tertentu (bagian manajemen daya pada panel kontrol).

Perangkat lunak pihak ketiga atau aplikasi lengkap bagus, tapi saya lebih suka pendekatan asli untuk Windows 7. Seperti baris perintah atau sesuatu.

pengguna1306322
sumber
Kali di bawah menit untuk opsi tidur monitor? Yang akan membantu ketika menerapkan metode ini: answers.microsoft.com/en-us/windows/forum/windows_7-desktop/...
Andrestand

Jawaban:

8

Script ini ditulis dalam Powershell dapat membuat ini bekerja untuk Anda.

# 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()

Catatan : Tip ini membutuhkan PowerShell 2.0 atau lebih tinggi.

stderr
sumber
@ user1306322 Benar. Screen saver tidak mematikan tampilan.
tombak
@ user1306322 Jawabannya telah diperbarui.
stderr
Karena tidak ada jawaban yang lebih baik saya menerima yang ini. Perlu dicatat bahwa ini hanya berguna ketika Anda tidak berinteraksi dengan komputer. Artinya, agar layar tetap dimatikan, Anda harus berhenti menyentuh tombol atau mouse apa pun. Menyiapkan timer untuk satu atau dua detik sebelum menjalankan perintah ini mungkin sangat bermanfaat.
user1306322
6

Bukan solusi asli - memerlukan program eksternal Nircmd gratis . Tapi itu sangat berguna dan tidak membutuhkan apa-apa untuk menggunakannya.

Untuk mematikan monitor:

nircmd.exe monitor off

Untuk menghidupkan monitor:

nircmd.exe monitor on
VL-80
sumber
4

Saya menggunakan Monitor Off Utility selama beberapa tahun. Saya menetapkan kombinasi jalan pintas dan menekannya jika saya ingin menonaktifkan tampilan.

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

magicandre1981
sumber
Tidak yakin mengapa jawabannya dibatalkan. Netralkan efeknya sejak utilitas melakukan apa yang diinginkan OP
Ejaz
Bukankah perangkat lunak semacam ini melakukan sesuatu yang bisa dilakukan perintah? Tidak ada perintah untuk mengedit timer matikan?
Andrestand
@Andrestand jawaban yang diterima menunjukkan kepada Anda API mana yang digunakan secara internal oleh alat.
magicandre1981
-1

Mencoba

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

Anda mungkin perlu masuk ke Control Panel dan mengkonfigurasi screen saver Anda menjadi "tidak ada".

Scott
sumber
Ini hanya melakukan apa yang LockWorkStationdisarankan oleh nama perintah - mengunci sesi pengguna saat ini. Efek yang sama dapat dicapai dengan menekan [Menang] + [L].
user1306322