关于可执行程序的调用

狗戈 2006-03-04 09:32:56
就是文件自动升级时主程序调用升级程序,如何处理?
...全文
80 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
狗戈 2006-03-06
  • 打赏
  • 举报
回复
问题已经解决了,谢谢!
狗戈 2006-03-06
  • 打赏
  • 举报
回复
用类名?可不可以举个例
cjianwen 2006-03-06
  • 打赏
  • 举报
回复
嗯,也可以用类名的~!
狗戈 2006-03-06
  • 打赏
  • 举报
回复
hWndMain=FindWindow(NULL,"A的标题名");
这句不是很明白,A的标题名是指From中的Caption吗?
lother 2006-03-05
  • 打赏
  • 举报
回复
很好的方法!
学习
lurel 2006-03-04
  • 打赏
  • 举报
回复
1,
这个很容易,在升级时,可以B调用FindWindow查找A程序的句柄,然后发送WM_CLOSE消息,就可以关闭A了
例如:在
HWND hWndMain;
hWndMain=FindWindow(NULL,"A的标题名");
if(hWndMain!=NULL)
{
PostMessage(hWndMain,WM_CLOSE,0,0);

}
2.在B关闭前,调用ShellExecute启动A;
WaveYang 2006-03-04
  • 打赏
  • 举报
回复

ShellExecute(NULL,"open","B.exe",NULL,"%SystemRoot%\\system32\\",SW_SHOW);
Application->Terminate(); //关闭A程序

B程序打开A程序的方法同上。
狗戈 2006-03-04
  • 打赏
  • 举报
回复
还有一个问题,如果我从A程序调用B程序来升级A程序,那么A程序如何关闭,当B程序完成后,如何再打开A程序?
lurel 2006-03-04
  • 打赏
  • 举报
回复
用ShellExecute;
例如打开记事本
ShellExecute(NULL,"open","notepad.exe",NULL,"%SystemRoot%\\system32\\",SW_SHOW);
狗戈 2006-03-04
  • 打赏
  • 举报
回复
自个顶一个

13,825

社区成员

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

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