2017-09-08 22 views

답변

0

열린 파일 위치 기능 (shell32의 COpenFileLocationMenu)은 레지스트리의 단순한 정적 명령이 아닌 셸 확장입니다. COpenFileLocationMenu는 IObjectWithSite도 구현합니다.

COpenFileLocationMenu의 IContextMenu::InvokeCommand 메서드를 호출하면 해당 사이트에서 IUnknown_QueryService(..., SID_SInPlaceBrowser, IShellBrowser)이 호출되므로 IShellBrowser으로 Explorer 창을 탐색 할 수 있습니다. ...

배경 메뉴 항목은 IShellExtInit::Initialize에서 폴더 위치를 수신하고 일반 메뉴 항목은보기를 얻을 IShellBrowser::QueryActiveShellView를 사용하고 현재 위치를 찾을 수 있습니다

당신은 당신에게 다음 셸 확장을 작성하지 않으려면 scriptableShellWindows object을 해결해야하지만 Powershell의 Pluvoke'ing GetForegroundWindow을 사용하여 올바른 창을 찾으려면 약간의 추측을해야합니다.