Nghe sự kiện tắt màn hình và tắt chuột trong Windows


0

Tôi muốn ngăn chuột đánh thức màn hình của mình (trong khi PC của tôi đang bật nhưng màn hình tắt hoặc trình bảo vệ màn hình đang bật).

Tôi đã đọc tất cả các tài nguyên cho tôi biết chính xác "không thể thực hiện được", ví dụ như câu hỏi này . Hoặc những người nói rút phích cắm chuột của bạn, hoặc lật ngược chuột xuống hoặc ngăn chuột đánh thức PC khỏi giấc ngủ. - Không quan tâm đến những cái đó.

Tôi muốn ai đó giúp tôi tìm ra giải pháp này:

  • cách chặn màn hình tắt sự kiện hoặc trình bảo vệ màn hình khi có sự kiện.
  • nếu không, thì ít nhất là chặn một lệnh tắt màn hình rõ ràng mà tôi gửi bằng cách chạy tệp Monitor Offer.bat hoặc lệnh nircmd hoặc lệnh AHK AutoHotkey.
  • sau đó chạy một tập lệnh vô hiệu hóa ngay lập tức chuột / chuột / không phải bàn phím của tôi.
  • sau đó, nếu màn hình bị đánh thức trở lại hoặc nếu đóng trình bảo vệ màn hình hoặc ít nhất là nếu có bất kỳ phím bàn phím nào được nhấn, thì hãy bật lại chuột.

Chúc mừng.

[CHỈNH SỬA]

Chúng tôi có một giải pháp tuyệt vời với AHK bởi user3419297. Lý tưởng nhất là chức năng cũng sẽ hoạt động nếu / trong khi windows bị khóa (không đăng xuất, nhưng bị khóa).

Có thể bằng cách nào đó sử dụng các phím dính như DaaBoss nói hoặc các phần khác của khả năng truy cập cửa sổ.


Vô ích, "cảnh sát biên tập viên" ghét / hạ cấp, và không thể nắm bắt được TẠI SAO bạn muốn nó, (Mệt mỏi vì điều này!) Tôi hiểu và thấy giá trị trong việc phát triển một giải pháp tuyệt vời. Tôi không nghĩ rằng bạn sẽ thấy một "câu trả lời dễ dàng" ở đây. Nếu có một cách để tiếp cận bạn, chúng tôi có thể qua lại cho đến khi cả hai chúng tôi đều hài lòng. THEN đăng câu trả lời với mã SAMPLES, nhưng cũng có sẵn một giải pháp "chấp nhận được về mặt thương mại". Chìa khóa ở đây là THIẾT KẾ một giao diện người dùng tuyệt vời. Chẳng hạn, có thể sử dụng phương pháp "phím dính" Windows phải đánh thức màn hình, chỉ bằng cách áp dụng cho chuột thay vì bàn phím.
DaaBoss

Câu trả lời:


1

Hãy thử tập lệnh AHK này:

$F1 Up::  ; or whatever combination you want
    Keyboard_Blocked := true   ; assign the Boolean value "true" or "1" to this variable
    BlockInput On   ; disable keyboard and mouse
    SendMessage, 0x112, 0xF170, 2,, Program Manager ; turn the monitor off, similar to power saving mode
    ; or:
    ; Run path of your screensaver 
return


; The #If directive creates context-sensitive hotkeys:

#If (Keyboard_Blocked) ; If this variable has the value "true" 

    $F1 Up::  ; press F1 to re-enable keyboard and mouse and turn the monitor on
        BlockInput Off
        Keyboard_Blocked := false
    return

#If ; turn off context sensitivity

CHỈNH SỬA:

Thay vì định cấu hình trong các tùy chọn nguồn thời gian không hoạt động sau đó màn hình tắt hoặc nhấn Win + L để khóa hệ thống, bạn có thể thực hiện bằng cách sử dụng tập lệnh AHK chạy vĩnh viễn. Trong kịch bản này, bạn có thể thêm nhiều nội dung (phím nóng, hotstrings, chức năng, v.v.) để tạo thuận lợi cho công việc của bạn.

#NoEnv
#SingleInstance Force
SetTimer, DetectTimeIdle, 50
return

DetectTimeIdle:
; lock the computer automatically after 20 seconds of inactivity.
; Replace 20000 with 60000 for 1 minute etc.
If (A_TimeIdle > 20000) ; as long as there is no input within the last 20 seconds
    GoSub !F1 Up ; jump to this hotkey definition
return


; Press Alt+F1 to manually lock the computer
!F1 Up::
    Keyboard_Blocked := true   ; assign the Boolean value "true" or "1" to this variable
    BlockInput On   ; disable keyboard and mouse
    SendMessage, 0x112, 0xF170, 2,, Program Manager ; turn the monitor off, similar to power saving mode
return


#If (Keyboard_Blocked) 

    ; press F1 or F2 or Space ... to re-enable keyboard and mouse and turn the monitor on
    $F1 Up:: 
    $F2 Up::
    $Space Up::
    ; ...
        BlockInput Off
        Keyboard_Blocked := false
        ; Move the mouse  (speed 10) by 20 pixels to the right and 30 pixels down from its current location to unlock the computer:
        MouseMove, 20, 30, 10, R
        reload
    return

#If

Điều này là khá tốt. Tôi đã thay đổi BlockInput Onđến BlockInput MouseMoveBlockInput Offđến BlockInput MouseMoveOff. Không thể tìm ra cách mở khóa bằng cách nhấn bất kỳ phím nào trên bàn phím thay vì chỉ một phím F1 hoặc bất cứ thứ gì.
Spectraljump

Tôi sẽ đợi một chút để thay thế trước khi tôi chấp nhận câu trả lời này, vì AHK rõ ràng không hoạt động nếu windows bị khóa (đó là điều mà PC của tôi cuối cùng làm, nó tự khóa), vì vậy nếu chuột di chuyển và cửa sổ bị khóa thì màn hình sẽ sáng lên.
Spectraljump

Xem thêm câu trả lời chỉnh sửa của tôi.
dùng3419297
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.