难:ShellExecute(0,"install",(AppsDirectory+AnsiString("\\dlls\\opendivx.inf")).c_str(),"","",SW_SHOW);

woodheadhn 2002-07-18 09:36:19
怎样在这句执行完后再继续自己的程序:
ShellExecute(0,"install",(AppsDirectory+AnsiString("\\dlls\\opendivx.inf")).c_str(),"","",SW_SHOW);
...全文
49 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kk_liwei 2002-07-18
  • 打赏
  • 举报
回复
http://www.csdn.net/expert/topic/864/864058.xml?temp=.280697
ljlln 2002-07-18
  • 打赏
  • 举报
回复
回复人: jishiping(JSP 季世平) ( ) 信誉:100
佩服!学习
jishiping 2002-07-18
  • 打赏
  • 举报
回复
如果AppsDirectory有空格的话,这样写:
str = AnsiString("rundll32.exe setupapi,"
"InstallHinfSection DefaultInstall 132 \"")
+ AppsDirectory + "\\dlls\\opendivx.inf\"";
jishiping 2002-07-18
  • 打赏
  • 举报
回复
如果AppsDirectory有空格的话,这样写:
str = AnsiString("rundll32.exe setupapi,"
"InstallHinfSection DefaultInstall 132 \"")
+ AppsDirectory + "\\dlls\\opendivx.inf\"";
jishiping 2002-07-18
  • 打赏
  • 举报
回复
AnsiString str;
STARTUPINFO si;
PROCESS_INFORMATION pi;

memset(&si, 0, sizeof(si));
si.cb = sizeof(STARTUPINFO);
str = AnsiString("rundll32.exe setupapi,"
"InstallHinfSection DefaultInstall 132 ")
+ AppsDirectory + "\\dlls\\opendivx.inf";
if (CreateProcess(str.c_str(),NULL,NULL,NULL,
FALSE,0,NULL,NULL,&si,&pi))
WaitForSingleObject(pi.hProcess, INFINITE);
woodheadhn 2002-07-18
  • 打赏
  • 举报
回复
成功了
万分感激季大师
我试过一万次WaitForSingleObject(..),就是不成
这一试就通。
以下是正确的:

current_directory(curdir);
AppsDirectory=AnsiString(curdir);
AnsiString str;
STARTUPINFO si;
PROCESS_INFORMATION pi;

memset(&si, 0, sizeof(si));
si.cb = sizeof(STARTUPINFO);
str = AnsiString("D:\\WINNT\\System32\\rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 x:\\kj\\dlls\\OpenDivX.inf");
CreateProcess(NULL,str.c_str(),NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);
WaitForSingleObject(pi.hProcess, INFINITE);
//WinExec(str.c_str(),SW_SHOW);
ShowMessage("ok");

13,873

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧