Windows 10에서 탐색기 대신 셸로 배치 스크립트 실행

Windows 10에서 탐색기 대신 셸로 배치 스크립트 실행

Windows 10에서 기본 셸은 explorer.exe작업 표시줄, 바탕 화면 아이콘 및 시작 메뉴를 제공하는 입니다.

Windows 10 v1909 및 v1903 이후 Microsoft는 Office를 설치하지 않은 사용자가 여가를 위해 이러한 키를 사용할 수 없도록 Office 응용 프로그램의 기본 키인 하이퍼 키( CTRL- ALT- SHIFT- )와 몇 개의 키를 사용하기로 결정했습니다. WIN.

이러한 키는 다양한 프로그램의 작업에 바인딩되어 있었지만 이제 이러한 키는 모두 내 웹 브라우저에서 내가 사용하지 않는 office365로 이동하는 페이지를 열거나 OneDrive용 O의 경우 오류 메시지를 표시합니다. OneDrive가 설치되어 있지 않기 때문입니다.

레지스트리 조정을 사용하여 버튼을 눌렀을 때 아무것도 열리지 않도록 하는 기능이 있어야 하지만 Windows 10 v1909에서는 더 이상 작동하지 않습니다.

이 동작을 제거해야 하므로 몇 가지 조사를 수행했습니다.

Microsoft는 이 지원을 에 직접 내장한 것으로 보입니다 explorer.exe. 죽일 수 explorer.exe있고 마침내 단축키가 사라졌지만 시작하면 explorer.exe다시 나타납니다.

explorer.exe을(를) 시작하면 이러한 키가 한 번 등록되고 키 등록에 실패하면 Explorer는 다시 시도하지 않는 것으로 보입니다 . 이는 기본적으로 단축키를 다시 가져오려면 Explorer를 종료하고 해당 단축키를 사용하는 앱을 다시 시작한 다음 Explorer를 시작해야 함을 의미합니다. 탐색기를 종료하고 모든 사무실 단축키를 등록하는 앱을 시작한 다음 탐색기를 시작한 다음 사무실 단축키 등록을 취소하면 그 순간부터 완전히 무료가 될 수도 있습니다.

저에게는 이러한 전역 단축키를 모두 사용하는 프로그램이 하나만 있다는 점을 고려하면 Explorer를 시작하기 전에 이 프로그램을 시작하기만 하면 괜찮을 것입니다.

물론 Explorer를 종료하고 프로그램을 시작한 다음 Explorer를 시작하는 스크립트를 실행할 수 있지만 어쨌든 시스템 시작 시 실행된다는 점을 고려하면 Explorer 대신 시작 스크립트를 시작할 수 있다면 결과적으로 Explorer가 플래시되는 것을 피할 수 있습니다. 대체 쉘을 설정하여 수행할 수 있는 작업입니다. 그러나 제가 아는 바로는 .exe파일만 쉘로 설정할 수 있습니다.

파일(또는 다른 스크립팅 언어)을 쉘로 설정하는 방법을 아는 사람이 있습니까 .cmd? 아니면 전역 단축키 문제를 해결하는 깔끔한 방법을 아는 사람이 있습니까?

편집: 저는 Windows 10 Pro를 사용하고 있습니다.

실제로 단축키를 등록한 후 실행되는 VB .net 프로그램을 만들려고 했지만 explorer.exe안정적으로 작동하지 못했습니다. 셸이 아니고 explorer.exeexplorer.exe를 시작하면 실행되지 않지만 파일 브라우저만 표시되고 작업 표시줄 등은 표시되지 않습니다. Explorer가 셸이고 시작되면 내 프로그램에서 이를 종료하면 시작 시퀀스가 ​​중단됩니다. , 그래서 일상을 상당히 지연시켜야 하는데, 이는 어느 시점에서 눈에 띄게 Explorer가 다시 시작된다는 것을 의미하며 이는 이상적이지 않습니다.

작업 표시줄과 바탕 화면을 대체하기 위해 나만의 셸을 만드는 아이디어를 시도해 보았지만 실제 도구 창 관리자를 사용하고 Explorer를 셸로 사용한다는 점을 고려하면 그것도 이상적이지는 않습니다. 그렇기 때문에 이 질문은 여전히 ​​열려 있습니다. 비록 제가 묻는 것이 단순히 불가능할까봐 두렵기는 하지만요.

답변1

키보드 필터(WMI 공급자 참조)

Windows 10 Enterprise 및 Windows 10 Education에서만 지원됩니다.

WEKF_PredefinedKey
Ctrl이 클래스는 + Alt+ 와 같은 사전 정의된 키 조합을 차단하거나 차단 해제합니다.Delete

class WEKF_PredefinedKey {
 [Static] uint32 Enable (
   [In] string PredefinedKey<
 );

 [Static] uint32 Disable (
   [In] string PredefinedKey
 );

 [Key] string Id;
 [Read, Write] boolean Enabled;
};

원천: 마이크로소프트 문서

답변2

이 아이디어를 테스트하지는 않았지만 그럴듯하고 간단해 보입니다. Explorer를 바꾸는 대신 .reg레지스트리에서 Explorer가 생성한 불쾌한 항목을 삭제하거나 수정하는 파일을 만듭니다. 그런 다음 파일을 실행 .reg하고 Windows에 로그온할 때마다 트리거되는 작업을 Windows의 작업 스케줄러에서 만듭니다.

자세한 내용은 다음을 참조하세요.
.reg 파일을 사용하여 레지스트리 하위 키 및 값을 추가, 수정 또는 삭제하는 방법

답변3

여기에서 해결되었습니다. https://github.com/stringlapse/OfficeKeyFix

C++ 일반 작업을 위한 확장 기능이 포함된 Visual Studio를 로드해야 합니다. 빈 프로젝트를 생성하고 빌드한 후 자동 실행으로 이동합니다.

작업 플래너에서 30초 또는 60초 지연으로 작업을 생성하는 것이 좋습니다.

관련 정보