Cách không cho phép các thiết bị USB đánh thức máy tính theo mặc định trong Windows 7


16

Mỗi lần tôi cắm chuột / bàn phím mới hoặc cắm một cái hiện có vào cổng USB mới, tôi phải tự đi đến trình quản lý thiết bị, truy cập trang thuộc tính của thiết bị và bỏ chọn "Cho phép thiết bị này đánh thức máy tính" trên trang "Quản lý năng lượng". nhập mô tả hình ảnh ở đây

Có thể thiết lập chính sách hệ thống trong Windows 7, sao cho hộp này không được kiểm tra cho chuột / bàn phím USB mới theo mặc định?

Chỉnh sửa: Nếu không có cách nào để thiết lập chính sách hệ thống như vậy, thì có ít nhất một cách để liệt kê và vô hiệu hóa đánh thức USB trên các thiết bị bằng cách sử dụng powercfgtrong một tệp bó?

Chỉnh sửa 2: Điều này phải có thể thực hiện ít nhất bằng cách sử dụng powercfg. powercfg devicequery wake_armedđưa ra một danh sách tất cả các thiết bị có thể đánh thức hệ thống. Bây giờ làm thế nào tôi có thể đưa danh sách này trở lại powercfgvà để nó vô hiệu hóa đánh thức trên các thiết bị được liệt kê?


1
Bạn có thể vô hiệu hóa này trong một số BIOS (Legacy và UEFI)
justbrowsing

BIOS của tôi không có tùy chọn như vậy, thật không may.
Công tước Nukem

BOIS của tôi cũng không có tùy chọn này. Vui lòng cho chúng tôi biết nếu bạn tìm thấy câu trả lời - Tôi đã có thói quen tắt nguồn điện trong nhiều năm và tôi thực sự muốn thay đổi điều đó ...
Allen Pestaluky

Câu trả lời:


3

Chỉnh sửa 2: Làm rõ

Câu trả lời này không giải quyết vấn đề trong câu hỏi theo cách diễn đạt ban đầu của nó. Vô hiệu hóa đánh thức cho tất cả các thiết bị trong tương lai dường như là không thể. Giải pháp trong câu trả lời này chỉ cho phép bạn tắt đánh thức cho tất cả các thiết bị hiện được kết nối .

Câu trả lời ban đầu của tôi:

Câu hỏi này dường như đã được trả lời trong một câu trả lời SO khác

for /F "tokens=*" %%A in ('powercfg -devicequery wake_armed') do powercfg -devicedisablewake "%%A"

Điều này cần phải được chạy như một quản trị viên.

Biên tập:

Để cung cấp một giải pháp hoàn chỉnh hơn ở đây là một tập lệnh yêu cầu đặc quyền của quản trị viên trước khi chạy vòng lặp trên. Các quyền quản trị viên được yêu cầu sử dụng một powertoy của Microsoft (được viết bằng VisualBasic, không có gì đáng ngạc nhiên)

@echo off
if "%~1"=="" (
  elevate %0 do
) else if "%~1"=="do" (
  for /F "tokens=*" %%A in ('powercfg -devicequery wake_armed') do (
    if not "%%A"=="NONE" (
      echo Disabling %%A
      powercfg -devicedisablewake "%%A"
    )
  )
  echo All done.
  pause
) else (
  echo Usage: %~nx0
)

Điều này sẽ chỉ vô hiệu hóa cấu hình hiện tại của thiết bị USB, không phải tất cả các cấu hình trong tương lai như câu hỏi được yêu cầu. Ví dụ: chạy tập lệnh này, sau đó rút chuột ra và cắm lại vào một cổng mới - chuột sẽ tỉnh lại sau khi ngủ trừ khi tập lệnh này được chạy lại cho cấu hình thiết bị USB mới.
Allen Pestaluky

1
@ ALLenPestaluky câu hỏi có các chỉnh sửa yêu cầu ít nhất một giải pháp một phần nếu giải pháp hoàn chỉnh là không thể. Câu trả lời của tôi (và câu trả lời tôi liên kết đến) chính xác là giải pháp một phần mà OP đang yêu cầu.
SnakE

Cảm ơn, tập lệnh đợt này thực hiện chính xác những gì tôi muốn. Tôi có thể cố gắng tìm cách tự động hóa điều này trong tương lai. Bạn có tình cờ biết liệu có cách nào để thực hiện các cuộc gọi powercfg thông qua API Windows hay không, để tránh sinh ra các quy trình riêng biệt?
Công tước Nukem

1
@DukeNukem Không Tôi không biết về API như vậy. Tôi đã không làm bất kỳ nghiên cứu nào mặc dù vậy nó vẫn có thể tồn tại. Ngoài ra tất cả các cài đặt này phải có trong sổ đăng ký. Vì vậy, bạn có thể sử dụng procmonpowertoy để theo dõi vị trí đăng ký nào được truy cập powercfg -devicequery wake_armedvà viết công cụ thao tác đăng ký của riêng bạn.
SnakE

1

Để trả lời các câu hỏi trong chỉnh sửa của bạn:

Không, bạn không thể sử dụng powercfg để liệt kê các thiết bị để thay đổi hành vi đánh thức mặc định của tất cả các cấu hình USB trong tương lai như bạn đã hỏi trong câu hỏi ban đầu của mình.

Tôi đã thử sử dụng For /F "tokens=*" %%A in ('powercfg -devicequery wake_armed') do powercfg -devicedisablewake "%%A"tập lệnh, nhưng sau khi cắm thiết bị USB của mình vào một cổng mới, nó mặc định quay lại đánh thức máy tính.

Tôi thậm chí đã thử liệt kê kết quả của powercfg -devicequery wake_from_anynó, nhưng dường như bạn chỉ có thể liệt kê kết nối các thiết bị USB . Ngay cả wake_from_anyđối số cũng trả về một danh sách khác nhau mỗi khi bạn thay đổi cổng mà thiết bị USB của bạn được cắm vào.

Để trả lời câu hỏi ban đầu của bạn:

Tôi không có ý kiến. Tôi thực sự muốn biết câu trả lời cho điều này, nhưng tôi vẫn chưa tìm thấy câu trả lời. Nếu bất cứ ai có thể tìm ra điều này, bạn sẽ được yêu thương! <3


1

[ TUYÊN BỐ ] Đây không phải là một câu trả lời cho câu hỏi OP mà là một giải pháp cho vấn đề mà có lẽ bạn đã kết thúc ở đây!

Chủ đề cũ nhưng tôi đến đây trước tiên cho một giải pháp mà cuối cùng tôi đã giải quyết theo một cách khác và bây giờ tôi đang chia sẻ.

[ VẤN ĐỀ ] Vấn đề của tôi là với một thiết bị USB (bộ điều khiển xbox) giữ cho PC tỉnh táo hoặc đánh thức nó ngay khi nó đi vào giấc ngủ. Đầu tiên tôi đã cần phải làm những gì OP đang nói, sau đó tôi đã sử dụng kịch bản được đăng ở đây bởi SnakE.

[ GIẢI PHÁP ] Nó đã được giải quyết đúng cách mà không có bất kỳ tập lệnh hack hay điều khiển thủ công nào chỉ bằng cách định cấu hình XHCI trong cài đặt bios từ SmartAuto thành Đã bật.

[ BITS TẠI SAO ] Điều này làm là buộc USB trên bộ điều khiển bảng hoạt động như USB3 mọi lúc thay vì hạ cấp xuống USB2 và sau đó chuyển sang USB3 khi HĐH kiểm soát. Buộc nó phải hành xử đã được chứng minh là đã giải quyết vấn đề của tôi với trình điều khiển thiết bị USB hoạt động sai khi cố gắng chuyển PC sang chế độ ngủ / ngủ đông. Chạy Windows 10 được tích hợp trình điều khiển cho USB3 cho phép chế độ XHCI hoạt động rất tốt, vấn đề của tôi đến từ nó nếu khởi động một số HĐH không hỗ trợ USB3.

SmartAuto không phải là một vấn đề vì ( như đã nêu ở đây ) sau lần khởi động đầu tiên, bộ điều khiển sẽ ở trên USB3 nhưng có thể có lỗi ở đâu đó trong quá trình ra quyết định và nó hoạt động như Auto trên bo mạch chủ Asus của tôi.


Điều này đã khắc phục sự cố của tôi với bộ thu Logitech trên máy tính xách tay ASUS. Sau khi sửa lỗi BIOS này (tôi đã chọn Tắt), tôi cũng phải tắt khả năng đánh thức máy tính của từng thiết bị trong Trình quản lý thiết bị một lần nữa.
Jim Hunziker

-1

Đây có vẻ là một tài liệu vấn đề đã biết có thể được tìm thấy ở đây Tóm tắt:

Cách giải quyết 1 (Khuyến nghị)

Cắm thiết bị USB vào bộ điều khiển máy chủ Giao diện điều khiển máy chủ nâng cao (EHCI).

Cách giải quyết 2

Vô hiệu hóa khả năng đánh thức máy tính của thiết bị USB. Để làm điều này, hãy làm theo các bước sau:

Click Start
Start button
, right-click Computer, and then click Manage.
In the User Account Control dialog box, click Continue.

User Account Control permission
If you are prompted for an administrator password or for a confirmation, type the password, or click Allow.
Click Device Manager, expand Universal Serial Bus controllers, right-click the device, and then click Properties.
Click the Power Management tab, disable the Allow this device to wake the computer check box, and then click OK.

Lưu ý Chúng tôi khuyên bạn nên sử dụng Workaround 1 vì nó bảo toàn chức năng đánh thức. Khi bạn sử dụng Workaround 2, các thiết bị USB không thể đánh thức máy tính. Ngoài ra, nút nguồn điều khiển từ xa cho bộ thu IR của Windows Media Center không thể đánh thức máy tính.


1
Cảm ơn câu trả lời của bạn, nhưng tài liệu bạn liên kết đến không phải là vấn đề mà tôi gặp phải. Các bước bạn hiển thị trong cách giải quyết 2 là chính xác những gì tôi phải làm mỗi khi tôi cần tắt USB Wake trên thiết bị. Điều tôi muốn là để thức tỉnh này bị tắt theo mặc định vì vậy tôi không phải thực hiện các bước này mỗi lần và tôi không thể tìm thấy bất kỳ cách nào để làm điều đó cả ...
Duke Nukem
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.