读书人

能不能用C语言直接运行程序?该怎么解决

发布时间: 2012-03-13 11:21:10 作者: rapoo

能不能用C语言直接运行程序?
比如说我的U盘,我把QQ拷到U盘Tencent目录下,然后我想用C语言编写一个autorun.exe文件,运行该文件时会运行Tencent\qq.exe,而且为了在不同的机器上自由使用,要求要用相对目录,请问该如何实现?谢谢!!!!

[解决办法]
ShellExecute
或者CreateProcess都行
至于目录问题,绝对目录和相对目录是一样的,如果程序和Tencent目录位于同一个目录下,可以用路径.\Tencent\qq.exe.至于程序在u盘或者在硬盘都是一样的。
[解决办法]
命令行:start (参数设置,查看start /?) "Tencent\qq.exe "
c:system( "start ... ");
当然楼上说的比较正式
[解决办法]
system( "C:\\...\\qq.exe ");
[解决办法]
#include <windows.h>
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
HINSTANCE result=ShellExecute(NULL, _T( "open "), _T( ".\Tencent\qq.exe "), NULL,NULL, SW_SHOW);
return 0;
}
手上没有tc,这是vc下的。

[解决办法]
干脆先查找移动存储设备,找到就到此设备的根目录下递归查找QQ.exe,找到就CreateProcess(),或者WinExec()。
当然,首先,那台机器要支持你的U盘,能检测到你U盘的插拔状态,然后,嘿嘿,检测一定存储设备状态并不是很容易的事哦。

读书人网 >C语言

热点推荐