我正在尝试使用以下代码向上下文菜单添加一个选项
using var zipTargetRegKey = Registry.CurrentUser.CreateSubKey(@"Software\Classes\.zip\");
zipTargetRegKey.SetValue(string.Empty, "CompressedFolder");
zipTargetRegKey.SetValue("Content Type", "application/x-zip-compressed");
zipTargetRegKey.SetValue("DontCompressInPackage", string.Empty);
zipTargetRegKey.CreateSubKey("OpenWithProgids").SetValue("CompressedFolder", string.Empty);
zipTargetRegKey.CreateSubKey("PersistentHandler").SetValue(string.Empty, "098f2470-bae0-11cd-b579-08002b30bfeb");
using var regKey = Registry.CurrentUser.CreateSubKey(@"Software\Classes\.zip\shell\AppName\");
regKey.SetValue(string.Empty, "Unzip");
regKey.SetValue("Icon", "icon_path");
regKey.CreateSubKey("command").SetValue(string.Empty, "path_to_exe.exe %1"));
上下文菜单中的图标和选项显示得很好,但是,没有参数被传递到我的应用程序。我也尝试过使用
"%1"
或 "%~1"
,但似乎都不起作用。
我做错了什么?
跟进:我可以传递自定义参数吗?比如 path_to_exe.exe /custom_arg %1