-
Notifications
You must be signed in to change notification settings - Fork 104
Help
This app can add custom context menu for windows11
The custom menus use json files and stored in app's localdata folder
- add button: add a menu
- refresh button: refresh menus
- open folder button: open menu files folder
- cache button: build and clean cache button
- save button: save menu
- delete button: delete menu
- open file button: open menu config file
- setting button: set custom menu title

As shown in the picture, it adds a menu: Open the file with Notepad
{path} absolute address of the right-clicked file or folder
{name} file name (version>=1.1.2.0)
{parent} file parent(version>=1.9.0.0)
If the path has spaces
Generally, use "{path}"
But if the parameter needs to contain quotation marks, then use \"{path}\"
Other special needs can be tested by yourself
The name displayed in the windows context menu

For menu sorting, you can configure the appropriate value for each menu
"C:\Program Files\7-Zip\7zFM.exe",0
C:\WINDOWS\System32\SHELL32.dll,196
note: change a folder icon and open desktop.ini(hidden) in the folder to find the index number https://support.microsoft.com/en-us/topic/cannot-change-the-default-folder-icons-in-windows-explorer-db49e15d-d95a-bc68-9947-e3ec296f4514
"C:\Users\user\icons\icon.ico"
check checkbox and set extensions to match
- match file extensions
.apk .apkx .mapk
- match all
*
show the menu when selecting a folder
check checkbox to match
Two modes are supported
- EACH execute [exe] on each path_
- JOIN execute [exe] only once_
note:
When [Multiple Files] is turned on, extension matching and folder matching are ignored

For each file,pass [param] to [exe], same as single file

All paths will be connected according to the configuration,then as {path}
If 2 files are selected: path1.txt path2.txt
delimiter: ,
result path: "path1","path2"
note: Every path will be surrounded by quotes
When multiple files are selected, the [Param] may be different
so, the [Param] can be overwritten here
Typically:
single file: "{path}"
multiple files: {path}
add files to 7z archive
Exe:
"C:\\Program Files\\7-Zip\\7zG.exe"
Param:
a -ad "{parent}\{name}.7z" "{path}"
[Multiple Files] Match Multiple Files:
- JOIN
[Multiple Files] Path Delimiter: (space!!!)
[Multiple Files] Param:
a -ad "{parent}\files.7z" {path}
https://github.com/ikas-mc/ContextMenuForWindows11/blob/main/menuSample/15.add%20to%207z.json
First of all, when the path contains spaces,7z requires quoted path
When only one file is selected, by default, the path will not be quoted, we must add quotes manually
Param: "{path}"
When multiple files are selected, quotes are added to each path by default, we don't need to add quotes manually, we must override the [Param]
[Multiple Files] Param: {path}
cache is used to reduce the slow loading caused by file io ?: see tip and cache time
use customeContextMenuDebug.exe to show param
see json:
https://github.com/ikas-mc/ContextMenuForWindows11/blob/dev-multiple/menuSample/16.debug.json
https://github.com/ikas-mc/ContextMenuForWindows11/tree/main/menuSample
{
"title":"open with 7zFM",
"exe":"\"C:\\Program Files\\7-Zip\\7zFM.exe\"",
"param":"\"{path}\"",
"icon":"\"C:\\Program Files\\7-Zip\\7zFM.exe\",0",
"acceptExts":".zip .7z .rar .exe .iso",
"acceptDirectory": false
}
C:\Users\yourname\AppData\Local\Packages\{appId}\LocalState\custom_commands
If you need to back up, just copy all the files here to a safe folder.