给分!!!关于DLL中执行其他程序的问题!! (50分)

  • 主题发起人 至尊王
  • 开始时间

至尊王

Unregistered / Unconfirmed
GUEST, unregistred user!
我要在DLL中执行其他程序,如执行
myexe.exe http://nettv.diy.163.com/bug.htm
我的myexe.exe 可以接受参数! 在开始菜单的运行可以正常,但在我的Dll中不行?
谁能告诉我?在线等!!!
 
为什么我在我的DLL文件中用
ShellExecute(0,'open',pchar(c:/temp/myexe.exe),PChar('http://nettv.diy.163.com/bug.htm'),nil,sw_shownormal)
不能在我的Myexe.exe中打开网页!
 
出现什么问题。
具体的出错代码
是不是空间分配问题?
 
没有出错,但我的程序myexe.exe无法打开网页!而用运行myexe.exe http://nettv.diy.163.com/bug.htm 则可以
 
是什么错误?
是不是第一个参数 0 的问题
改用 WinExec 呢?
 
你上面代码写错了:少了引号
ShellExecute(0,'open',pchar('c:/temp/myexe.exe'),
= =
PChar('http://nettv.diy.163.com/bug.htm'),nil,sw_shownormal)
 
我监视myexe.exe,发现只传来一个参数"h";
而用开始菜单的运行时可以传来整个参数,不知原因?
 
可能是我在这里打错了,原文件没有错
 
加上双引号:
ShellExecute(0,'open',pchar('c:/temp/myexe.exe'),
PChar('"http://nettv.diy.163.com/bug.htm"'),nil,sw_shownormal)

Ok!
 
不行呀!
 
急呀!谁能帮助我?????
 
你在 myexe.exe 中显示一下,接受到的参数是什么,有几个参数,
然后再调整处理。
双引号肯定是要加上的。因为你的参数中有特殊字符。
看看在myexe.exe中是否两边还有双引号
 
如果有判断一下,把它们去掉
 
不要,用开始菜单的运行时可以传来整个参数!
 
没有要"""
 
还是看一下接受到的参数是什么?
系统的处理可能和 ShellExecute 不一样
 
我在myexe2.exe中调用就可以!一样的代码!就是在Dll中就不能传推完整的参数吗?
 
如果是那样的话就是空间分配的问题。
好象涉及空字符串空间分配,要加个什么单元 ..mem...
 
顶部