参考下面的代码自己修改吧,我也是从别人那里拿来的。 Dim pId As Long, pHnd As Long ' 分别声明 Process Id 及 Process Handle 变数 Dim CVtemp As String, CVarray As Variant pId = Shell(App.Path & "\" & t.exe, 0) ' Shell 传回 Process Id pHnd = OpenProcess(SYNCHRONIZE, 0, pId) ' 取得 Process Handle If pHnd <> 0 Then Call WaitForSingleObject(pHnd, INFINITE) ' 无限等待,直到程序结束 Call CloseHandle(pHnd) End If
2、FindWindow 查找 不同工作站桌面的窗口,不能互访
3、进程句柄 查找
還是結束"前一个EXE运行"執行“后一个EXE”
Dim CVtemp As String, CVarray As Variant
pId = Shell(App.Path & "\" & t.exe, 0) ' Shell 传回 Process Id
pHnd = OpenProcess(SYNCHRONIZE, 0, pId) ' 取得 Process Handle
If pHnd <> 0 Then
Call WaitForSingleObject(pHnd, INFINITE) ' 无限等待,直到程序结束
Call CloseHandle(pHnd)
End If
我是想用前一个EXE如果运行出现问题了,那么后一个EXE就不运行,跳出提示错误。如果前一个运行正常,那么后一个EXE就会运行。前一个EXE文件,是我要用VB编写的,后一个EXE文件 呵呵,是人家的。
新建一个模块,里面写
Sub Main()
Shell "app2.exe"
End Sub
如果前一个EXE运行跳出以后,UNLOAD ME 以后,那么后一个EXE就不能运行了 用windows 合并大师 合并 例如 将a.exe 与 b.exe 合并成c.exe 要满足你的要求,要在A.exe中加入
在UNLOAD ME 以后,删除本程的所有进程.因此 A.exe还应有测自身进程名的能力。
第二个工程:2.exe
思路:
1、在1.exe的代码中添加调用2.exe的代码,比如:shell "C:\2.exe" 启动2.exe。
2、在2.exe的卸载过程中添加一个关闭2.exe的命令,比如:Taskkill命令,在1.exe结束时,亦可结束2.exe
TASKKILL /F /IM 2.exe /T
或
TSKILL 2.exe /A
或
ntsd -c q -pn 2.exe其中一个就行,自己测试一下哪个对你好用吧
合并后,两个都会运行吗。A检测进程?但是B的进程要加进来吗。
windows 合并大师可以做到这样的效果吗。 我用合并的软件,它是把两个和成一个EXE,但是两个都会运行。没法起到判断的作用
不行啊 我有用shell 关闭进程,关闭了,但是还是运行
合并以后的C.EXE,关闭这个进程,或两个进程还是打不到控制后一个的效果。只有这两个是分开的两EXE文件,A.EXE才能控制得了B.EXE