내 노트북에는 물리적인 음소거 버튼(F8)이 있습니다.
- 이것은 물리적 스위치입니까, 아니면 소프트웨어 스위치입니까?
- 악성 코드가 음소거 버튼을 비활성화할 수 있는지 알아보고 있습니다.
감사해요
답변1
소프트웨어가 음소거되었습니다. Windows에서 음소거했습니다. 키보드 전자 장치가 Windows에 음소거 키를 보내면 Windows가 필요한 작업을 수행합니다. 이러한 유형의 키를 AppKey라고 합니다.
탐색 및 기타 기능을 위한 키보드 키
Microsoft Windows는 브라우저 기능, 미디어 기능, 응용 프로그램 실행 및 전원 관리를 위한 특수 키가 있는 키보드를 지원합니다. WM_APPCOMMAND는 추가 키보드 키를 지원합니다. 또한 ShellProc 함수는 추가 키보드 키를 지원하도록 수정되었습니다.
구성 요소 응용 프로그램의 하위 창에서 이러한 추가 키보드 키에 대한 명령을 직접 구현할 수 있는 가능성은 거의 없습니다. 따라서 이러한 키 중 하나를 누르면 DefWindowProc는 WM_APPCOMMAND 메시지를 창에 보냅니다. DefWindowProc은 또한 WM_APPCOMMAND 메시지를 상위 창에 버블링합니다. 이는 마우스 오른쪽 버튼을 사용하여 상황에 맞는 메뉴를 호출하는 방식과 유사합니다. 즉, DefWindowProc가 마우스 오른쪽 버튼 클릭 시 WM_CONTEXTMENU 메시지를 보내고 이를 부모에게 버블링하는 것입니다. 또한 DefWindowProc가 최상위 창에 대한 WM_APPCOMMAND 메시지를 받으면 코드 HSHELL_APPCOMMAND를 사용하여 셸 후크를 호출합니다.
Windows는 5개의 버튼이 있는 마우스인 Microsoft IntelliMouse Explorer도 지원합니다. 두 개의 추가 버튼은 앞으로 및 뒤로 브라우저 탐색을 지원합니다. 자세한 내용은 XBUTTON을 참조하세요.
https://docs.microsoft.com/en-us/windows/win32/inputdev/about-keyboard-input
따라서 포커스가 있는 프로그램이 키를 가져오지만 이를 처리하도록 프로그래밍되지 않았을 가능성이 높습니다(예: Media Player와 같이 직접 적용하지 않는 한). 프로그램은 처리하지 않거나 처리해야 하는 모든 명령에 대해 DefWindowProc를 호출합니다. DefWindowProc는 이를 WM_AppCommand로 변환합니다(다른 키/메뉴가 WM_Command로 변환됨). 프로그램이 이 Windows에서 DefWindowProc를 호출하면 알림을 요청한 모든 프로그램에 알림이 표시됩니다. 다른 사람이 음소거를 원하지 않으면 Windows가 수행합니다.