最近项目中要用到c#并且要注册鼠标点击右键菜单,在这里总结了几种方法以便记录

效果图:

1,reg注册,创建.reg文件,内容如下

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\disk]  (针对文件所有文件)
"MUIVerb"="云盘"
"SubCommands"="logs;addremark;searchfile" (子菜单,对应,'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\logs')
"Position"="bottom"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\logs] (子菜单)
@="查看历史记录"
"Icon"="d:\\WindowsFormsApp1.exe"(显示图片)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\logs\command]
@="WinSshFS.exe  \"%1\" logs" (点击时调用到程序'\"%1\"和 logs'是传递到参数)

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\addremark]
@="添加备注"
"Icon"="d:\\WindowsFormsApp1.exe"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\addremark\command]
@="WinSshFS.exe \"%1\" addremark"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchfile]
@="搜索文件"
"Icon"="d:\\WindowsFormsApp1.exe"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchfile\command]
@="WinSshFS.exe \"%1\" searchfile"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchtokms]
@="知识库中搜索"
"Icon"="d:\\WindowsFormsApp1.exe"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchtokms\command]
@="WinSshFS.exe search searchtokms"

[HKEY_CLASSES_ROOT\Directory\shell\disk] (针对所有文件夹)
"MUIVerb"="云盘"
"SubCommands"="logs"
"Position"="bottom"

[HKEY_CLASSES_ROOT\Directory\Background\shell\disk] (针对点击文件夹空白处)
"MUIVerb"="云盘"
"SubCommands"="searchtokms"
"Position"="bottom"

1,bat注册,其实和reg注册脚本一样.

创建.bat文件,内容如下(执行bat文件时需传递,可执行文件路径)
@echo off

set processdir=%1

if "%processdir%"=="" (exit)

set percent=%%
reg add "HKCR\*\shell\disk" /v MUIVerb /t REG_SZ /d "网盘"   /f
reg add "HKCR\*\shell\disk" /v SubCommands /d "logs;addremark;searchfile"  /f
reg add "HKCR\*\shell\disk" /v Position /d "bottom"  /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\logs" /ve /d "查看历史记录" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\logs\command" /ve /d "%processdir% \"%percent%1\" logs" /f

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\addremark" /ve /d "添加备注" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\addremark\command" /ve /d "%processdir%  \"%percent%1\" addremark" /f

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchfile" /ve /d "搜索文件" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchfile\command" /ve /d "%processdir%  \"%percent%1\" searchfile" /f

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchtokms" /ve /d "知识库中搜索" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\searchtokms\command" /ve /d "%processdir%  \"%percent%1\" searchtokms" /f

set directoryreg="HKCR\Directory\shell\disk"
reg add "%directoryreg%" /v MUIVerb /t REG_SZ /d "网盘"   /f
reg add "%directoryreg%" /v SubCommands /d "logs"  /f
reg add "%directoryreg%" /v Position /d "bottom"  /f

set directoryrebackgroundreg="HKCR\Directory\Background\shell\disk"
reg add "%directoryrebackgroundreg%" /v MUIVerb /t REG_SZ /d "网盘"   /f
reg add "%directoryrebackgroundreg%" /v SubCommands /d "searchtokms"  /f
reg add "%directoryrebackgroundreg%" /v Position /d "bottom"  /f

window注册鼠标右键菜单,及子菜单的更多相关文章

  1. 安卓开发笔记——Menu菜单组件(选项菜单,上下文菜单,子菜单)

    菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu).上下文菜单(ContextMenu)和子菜单(SubMenu). 菜单的实现 ...

  2. ASP.NET MVC动态生成网站菜单及子菜单

    在开发ASP.NET MVC网站时,Insus.NET想实现动态产生网站的主菜单及子菜单. 你需要在网站管理后台管理此2张表(Menu,SubMenu)的信息,添加,删除,编辑,更新等. Sequen ...

  3. Sharepoint/Project Server 看不到“安全性”菜单以及子菜单

    在Sharepoint/Project Server 构建后,左侧看不到看不到“服务器设置”菜单,在设置菜单后左侧出现“服务器设置”菜单,但是依然在右侧看不到“安全性”菜单以及子菜单. (这个图是借的 ...

  4. Android 菜单之子菜单SubMenu

    子菜单就是在点击了菜单中的选项后弹出的要对菜单中选项操作的菜单           他的操作与之前的两种类型的菜单操作差不多 动态添加 @Override public boolean onCreat ...

  5. MVC 前台获取三级菜单及子菜单

    1.在后台将所有的菜单获取出来,代码如下: public ActionResult Index() { //所有商品分类 var oneMenu = _baseGoodsCategory.FindLi ...

  6. jQuery/CSS3大屏下拉菜单 自定义子菜单内容

    这是一款样式很酷的jQuery/CSS3下拉菜单,首先这款CSS3菜单是宽屏的,主要是下拉菜单非常大气,更重要的是,下拉菜单的内容可以自己定义,也就是说,下拉菜单中可以定义菜单.图片等HTML元素,是 ...

  7. 注册鼠标右键CMD

    Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOT\Directory\shell\runas] [HKEY_CLASSES_ROOT\D ...

  8. Android开发菜单以及子菜单

    package com.example.androidtest; import android.app.Activity; import android.os.Bundle; import andro ...

  9. el-menu菜单 -- unique-opened 子菜单唯一性失效

    总结: 点击的是  el-sub-menu . 所以  el-sub-menu 的唯一性是必须的.否则 unique-opened 属性不生效

随机推荐

  1. BZOJ.2780.[SPOJ8093]Sevenk Love Oimaster(广义后缀自动机)

    题目链接 \(Description\) 给定n个模式串,多次询问一个串在多少个模式串中出现过.(字符集为26个小写字母) \(Solution\) 对每个询问串进行匹配最终会达到一个节点,我们需要得 ...

  2. c++模板文件,方便调试与运行时间的观察

    #define _CRT_SECURE_NO_WARNINGS#include<iostream>#include <vector>#include<algorithm& ...

  3. nginx Provisional headers are shown

    项目用的Nginx做的代理,重启电脑后,重启项目和Nginx 浏览器报 Provisional headers are shown  解决: host文件添加: 127.0.0.1   cleaner ...

  4. IDEA_构建Maven项目报错(1)

    构建报错: [ERROR] Plugin org.apache.maven.plugins:maven-archetype-plugin:RELEASE or one of its dependenc ...

  5. (88)Wangdao.com第二十一天_JavaScript 元素节点Element 节点

    Element 节点 (元素节点) 是一组对象 对应网页的 HTML 元素 每一个 HTML 元素,在 DOM 树上都会转化成一个 Element 节点对象(以下简称元素节点) 所有元素节点的 nod ...

  6. react_结合 redux - 高阶函数 - 高阶组件 - 前端、后台项目打包运行

    Redux 独立的集中式状态管理 js 库 - 参见 My Git 不是 react 库,可以与 angular.vue 配合使用,通常和 react 用 yarn add redux import ...

  7. 数位DP HDU - 2089 不要62

    不要62 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  8. IIC稳定性.VBS

    Sub Main Dim cnt Dim delay Dim time Dim atttime atttime = 20 delay = 3000 time = 50 crt.screen.Send ...

  9. 如何查看正在执行sql的语句及其父语句调用?如何查看正在执行SQL的具体参数值与执行计划?

    ---SQL Server查询正在执行的SQL语句及执行计划 select ds.session_id,dr.start_time,db_name(dr.database_id),dr.blockin ...

  10. 013-mac重做系统后的软件安装

    一.系统设置 1.屏幕设置:系统偏好设置→显示器→排列,多个显示器可以排列组合 2.touch bar功能键设置:系统偏好设置→键盘→键盘,触控栏设置 F1 3.程序坞[dock]设置:系统偏好设置→ ...