2017-05-03 8 views
0

방금 ​​데스크톱의 상황에 맞는 메뉴를 만드는 방법을 배웠습니다.하지만 실제로 원하는 것은 하나의 특정 링크에 대한 상황에 맞는 메뉴 만 사용하는 것입니다. 이것이 가능한가? 나는 아직 방법을 알지 못했다. 나는 HKEY_CLASSES_ROOT에서 확장자 대신에 파일을 지정하기를 희망했지만 작동시키지 못했습니다. 이것이 나의 가장 최근 시도입니다.하나의 특정 파일에 상황에 맞는 메뉴를 추가하는 방법

[HKEY_CLASSES_ROOT\Applications\My Link.lnk\Shell\Toggle] 
"Position"="Top" 
"Icon"="\"C:\\Program Files (x86)\\My Toggle\\My Toggle.Exe\"" 
@="Toggle" 

[HKEY_LOCAL_MACHINE\Software\Classes\My Link.lnk\shell\Toggle\command] 
@="\"C:\\Program Files (x86)\\My Toggle\\My Toggle.Exe\"" 
+0

나는 그것 같이 일하고 싶으면. [아이콘] = "\"C : \\ 프로그램 파일 (x86) \\ 내 토글 \\ 내 Toggle.Exe \ "" "[HKEY_CLASSES_ROOT \ DesktopBackground \ Shell \ PowerSribe 스위치] "위치 "="위쪽 " " @ 토글 " [HKEY_CLASSES_ROOT \ DesktopBackground \ Shell \ PowerSribe 전환 \ 명령] @ ="\ "C : \ Program Files (x86) \\ 내 토글 \\ 내 Toggle.Exe \" " –

답변

0

다른 사람이 동일한 유형의 것을하려고하는 경우. 가장 좋은 해결책은 .lnky라는 새로운 바로 가기 유형 확장을 만들고 컨텍스트 메뉴를 할당하는 것이 었습니다. 내가 뭔가를 놓치지 않는 한, 파일 확장자가 아닌 단일 파일에 대한 컨텍스트 메뉴를 만드는 방법을 찾을 수 없었습니다. 내 lnky 파일에 대한 I 권리 땡그랑 소리가 컨텍스트 메뉴의 맨 위에 다음 내 프로그램 아이콘 내 행동이있는 경우 Add menu item to windows context menu only for specific filetype

[HKEY_CLASSES_ROOT\.lnky] 
@="lnkyfile" 

[HKEY_CLASSES_ROOT\lnkyfile] 
@="Shortcut" 
"IsShortcut"="" 
"NeverShowExt"="" 
[HKEY_CLASSES_ROOT\lnkyfile\Shell\My Toggle] 
"Position"="Top" 
"Icon"="\"C:\\Program Files (x86)\\My program\\My program.Exe\"" 
@="My Action" 
[HKEY_CLASSES_ROOT\lnkyfile\Shell\My Toggle\command] 
@="\"C:\\Program Files (x86)\\My program\\My program.Exe\"" 

이것의 결과는 다음과 같습니다

이 가이드

은 많은 도움이되었습니다. 내 프로그램을 실행하면 EXE가 실행됩니다.

+0

두 번째 PC에서이 파일을 테스트 한 결과 파일을 링크 파일처럼 작동 시키려면 한 단계 더 나아 갔어야한다는 것을 깨달았습니다. HCR \ lnkfile 내보내기. 그것을 텍스트 편집기에서 열어 라. "lnkfile"을 "lnkyfile"으로 바꾸고 reg 파일을 다시 레지스트리에 병합한다. 최종 결과는 다음과 같습니다. –

+0

'[HKEY_CLASSES_ROOT의 \의 lnkyfile] @ = "바로 가기" "IsShortcut"= "" "NeverShowExt"= "" "EditFlags를"= DWORD : 00000001 "FriendlyTypeName"= "@ Shell32.dll에서, -4153" [HKEY_CLASSES_ROOT \ lnkyfile \ CLSID] @ = "{00021401-0000-0000-C000-000000000046}" [HKEY_CLASSES_ROOT \ lnkyfile \ 쉘] [HKEY_CLASSES_ROOT \ lnkyfile \ 셸 \ PowerSribe 전환] "위치"= "상위" "아이콘"= "\"C : \\ 프로그램 파일 (x86) \\ 내 프로그램 \\ 내 프로그램 .Exe \ "" @ = "내 작업" [HKEY_CLASSES_ROOT \ lnkyfile \ Shell \ PowerSribe Toggle \ command] @ = "\"C : \\ 프로그램 파일 (x86) \\ 내 프로그램 \\ 내 프로그램.EXE \ "" [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx를] –

+0

''[HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx를 \ ContextMenuHandlers] [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx를 \ ContextMenuHandlers \ 호환성] @ = "{1d27f844-3a1f-4410-85ac -14651078412d} " [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx를 \ ContextMenuHandlers \ NvAppShExt] @ ="{A929C4CE-FD36-4270-B4F5-34ECAC5BD63C} " [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx를 \ ContextMenuHandlers \ OpenContainingFolderMenu] @ =" {37ea3a21-7493-4208-a011-7f9ea79ce9f5} " ' –