求au的求生之路中文版安装包包

【求助】用NSIS制作的安装包里面的uninst.exe,用CreateProcess(x,..\uninst.exe,...如何判断是否进程结束? [文字模式]
- 看雪安全论坛
查看完整版本 :
yiruirui用NSIS向导制作了一个安装包(无任何文件)setup.exe,安装完毕会在安装位置产生一个uninst.exe(执行卸载功能的),用CreateProcess创建了这个卸载进程,
if(!CreateProcess(NULL,(LPTSTR)(LPCTSTR)m_exefilePath/*path*/,NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi))
MessageBox(_T(&创建进程失败!&));
DWORD nID=GetProcessId(pi.hProcess);
WaitForSingleObject(pi.hProcess,INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
发现得到的进程ID(PID)跟任务管理器中的不同,就其原因是这样的:执行uninst.exe,会产生uninst.exe进程(进程名就是uninst.exe),然而马上uninst.exe就不见了进而变成了一个叫Au_.exe的新进程,该进程才是真正实现卸载功能的。
现在情况如下:
我想等待卸载进程结束,结束之后我查看注册表或者文件(uninst.exe文件)来判断用户是真正执行了卸载操作还是中途取消卸载了,现在由于是等待的pi.hProcess-----uninst.exe,并非真正的卸载进程Au_.exe,所以是无法实现的。
耍了个小聪明:
当进程创建之后,首先调用GetProcessidFromName(_T(&Au_.exe&))来得到进程ID,如果ID不为0说明uninst.exe结束后产生的Au_.exe进程存在,然后根据PID得到HANDLE,再调用WaitForSingleObject(HANDLE,X)来实现。
以上的办法不够理想,不晓得大侠们有什么好的思路没有。(ps:卸载程序不是自己编写的,完全不受自己控制的),上传了一个用nsis制作的最简单的安装包,方便大家交流。三克油先!
wertyuyuyu注入DLL、写Shell代码,或者直接给uninst.exe动手术
xssysing创建个全局Event就好了
yiruirui已经解决,感谢各位。:D:后使用快捷导航没有帐号?
安装Adobe Audition CS6的LS7多语言版可选简体中文,为 ... &(&8&)
12-5-8 14:33
安装Adobe Audition CS6的LS7多语言版可选简体中文,为什么装完还是英文?
本帖子中包含更多资源
才可以下载或查看,没有帐号?
12-5-8 14:38
官方中文版还没出来呢
12-5-8 14:42
12-5-8 14:53
回复 狗公腰 在 #3 的 pid=3506790 的贴子
目前只是安裝啊 !
12-5-10 01:28
是不是有语言项里选啊?
12-5-10 08:43
装完后然后更新到中文
12-5-16 19:21
Adobe带中文的安装包通常都是LS3,LS7是不可能带中文的,即使菜单里有中文选项。
12-9-22 21:26
安装过程是有中文选项,但软件还没有中文出来!!
12-10-24 13:50
安装是有中文,但是au、pr、ae、en是没有中文的,其他的都有,你选择多项安装,在确认界面的列表里会有语言提示。
&&&&&& &&&&& &&&&&&
&&&&&& &&& &&&
软硬件产品/器材分类讨论(按字母顺序排序)
分类浏览:
主题数: 323202, 帖子数: 3115774,
&会员人数:

我要回帖

更多关于 au cs6安装包百度云 的文章

 

随机推荐