用shellexecute代替winexec出现了问题
我本来是用winexec调用一个exe程序,exe程序运行也完全没有问题。
现在想要用shellexecute传个参数,使exe程序本身双击不能直接运行,一定要通过接收到这个参数才运行。
写法:winexec(PChar('d:\aaa.exe'),SW_SHOWNORMAL);aaa.exe程序不做任何处理;aaa.exe程序能正常调用和退出。
shellexecute(handle, 'open','d:\aaa.exe','aaa',nil,SW_SHOWNORMAL);在aaa.exe程序的工程文件中加入以后判断:
for i:=1 to paramcount do
if ParamStr(i)<>'aaa' then
halt;
aaa.exe程序能正常调用,但退出的时候就报内存出错,具体的提示是内存不能"read"。
搞了几天了,没有明白问题出在哪里,麻烦大家看看啊,是不是我aaa.exe程序本来就存在内存的问题呢?因为我测试了一个简单的程序,用shellexecute传个参数也是能正常调用和退出的。但如果是aaa.exe本身有问题的话,用winexec调用后退出程序为什么没有报内存错呢???