使用NSIS打包过程中的坑

工作中使用NSIS打包安装包,安装过程中直接从官网下载了最新的3.6.1版本,
从网络上查资料关于检测运行中的程序的文章的都在推荐FindProcDLL,尝试后发现无论如何都不生效,最后仔细阅读文档发现
在这里插入图片描述
从NSIS 2.46开始这个插件不再工作…,于是寻找替代品,在尝试过执行CMD和其他一些插件都不起作用,最后选择了nsProcess,但是它判断有些问题,最后在这个回答中找到了解决方案https://stackoverflow.com/questions/59734294/nsis-nsprocess-plugin-always-returns-process-not-running
贴下解决方案
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
***************************************************************** *** nsProcess NSIS plugin v1.0 *** ***************************************************************** 2005 Shengalts Aleksander aka Instructor (Shengalts@mail.ru) Source function FIND_PROC_BY_NAME based upon the Ravi Kochhar (kochhar@physiology.wisc.edu) code Thanks iceman_k (FindProcDLL plugin) and DITMan (KillProcDLL plugin) for direct me Features: - Find/kill a process by name - Kill all processes with specified name (not only one) - The process name is case-insensitive - Win95/98/ME/NT/2000/XP support - Small plugin size (4,5 Kb) **** Output variables **** .r0-.r9 == $0-$9 .R0-.R9 == $R0-$R9 **** Find process **** nsProcess::FindProcess "[file.exe]" .r0 "[file.exe]" - Process name (e.g. "notepad.exe") .r0 - $0=0 Success $0=603 Process was not currently running $0=605 Unable to load PSAPI.DLL $0=606 Unable to identify system type $0=607 Unsupported OS $0=700 Unable to get procedure address from PSAPI.DLL $0=701 Unable to get process list, EnumProcesses failed $0=702 Unable to load KERNEL32.DLL $0=703 Unable to get procedure address from KERNEL32.DLL $0=704 CreateToolhelp32Snapshot failed **** Kill process **** nsProcess::KillProcess "[file.exe]" .r0 "[file.exe]" - Process name (e.g. "notepad.exe") .r0 - $0=0 Success $0=602 Not all processes terminated successfully $0=603 Process was not currently running $0=604 No permission to terminate process $0=605 Unable to load PSAPI.DLL $0=606 Unable to identify system type $0=607 Unsupported OS $0=700 Unable to get procedure address from PSAPI.DLL $0=701 Unable to get process list, EnumProcesses failed $0=702 Unable to load KERNEL32.DLL $0=703 Unable to get procedure address from KERNEL32.DLL $0=704 CreateToolhelp32Snapshot failed

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值