主题:计算机里的文件夹怎样在VC里表示
skybtone
[专家分:160] 发布于 2006-07-17 13:23:00
举个例子:我要把C:\Program Files\Internet Explorer\Internet Explorer.exe这个程序加载到VC里,我用这个指令:system();----
system("C:\Program Files\Internet Explorer\Internet Explorer.exe");
问题在于这个路径中包含空格,在VC里Internet Explorer不会认为是一个文件夹,而被认为是有一个文件夹Internet,后面的那个Explorer不知道被作了什么处理
那么问题是:怎样将上面这个程序加载到VC里?
回复列表 (共4个回复)
沙发
rickone [专家分:15390] 发布于 2006-07-17 14:36:00
你所谓的‘加载’什么意思?
指出一点,在C语言里面字符串中出现的"\"要转义"\\"。
板凳
skybtone [专家分:160] 发布于 2006-07-17 17:49:00
这一点我知道,只是忘了在一开始申明一下,不过怎么处理那些空格这个问题还没有清楚~~~
3 楼
skybtone [专家分:160] 发布于 2006-07-17 17:53:00
加载就是在执行这个程序的时候,因为需要而打开外部程序,把外部程序加载到这个程序里,通过一个衔接,比如说,这里system("C:\\Program Files\\Internet Explorer\\Internet Explorer.exe");本身这条语句所在的程序生成的执行文件就是一个程序,通过这条语句的作用就是打开另外一个程序(这里就是Internet Explorer.exe).
4 楼
rickone [专家分:15390] 发布于 2006-07-17 19:42:00
#include<windows.h>
#include<stdio.h>
int main(int argc,char *argv[])
{
char *szCommandLine="C:\\Program Files\\Internet Explorer\\Iexplore.exe";
STARTUPINFO si={sizeof(si)};
PROCESS_INFORMATION pi;
BOOL bRet=::CreateProcess(NULL,szCommandLine,NULL,NULL,FALSE,NULL,NULL,NULL,&si,&pi);
if(bRet)
{
::CloseHandle(pi.hThread);
::CloseHandle(pi.hProcess);
}
else
{
printf("加载失败!\n");
}
return 0;
}
我来回复