前言
windows系统实现系统级右键菜单,建议使用打包插件electron-builder,写nsis脚本控制注册表比较方便。
复制粘贴的混子良心不会痛吗
那些复制粘贴别人博文的混子咋想的,翻看试错好几个小时,全是一篇文章,这要是平时也就忍了,关键是还都在注册表路径这个关键位置错了,都十年八年码龄的人了,抄作业前不验证答案吗?
如果你看了其他人的文章总也实现不了最简单的右键功能,那么你看到的nsis脚本大概率是这样的:
!macro customInstall
WriteRegStr HKCR "*shellmy_electron" "" "测试........"
WriteRegStr HKCR "*shellmy_electron" "Icon" "$INSTDIRmy_electron.exe"
WriteRegStr HKCR "*shellmy_electroncommand" "" '"$INSTDIRmy_electron.exe" "read" "%1"'
!macroend
;卸载时清除
!macro customUninstall
DeleteRegKey HKCR "*shellmy_electron"
!macroend
不说废话,我研究过nsis脚本的一些基本语法,联想到windows路径书写习惯后,发现正确的写法应该是这样的:
!macro customInstall
WriteRegStr HKCR "*\shell\my_electron" "" "上传文件demo"
WriteRegStr HKCR "*\shell\my_electron" "Icon" "$INSTDIR\my_electron.exe"
WriteRegStr HKCR "*\shell\my_electron\command" "" '"$INSTDIR\my_electron.exe" "read" "%1"'
!macroend
;卸载时清除
!macro customUninstall
DeleteRegKey HKCR "*\shell\my_electron"
!macroend
my_electron是安装包的名字,改成自己的就行,亲测有效。
写在最后
请大家擦亮眼睛,远离有任何抄袭倾向的博主。文章查错,事倍功半。