我的编程学习日志(13)--打开一个文件的方法(system(),ShellExecute())

今天遇到一个问题,需要在程序开始时打开一个txt文档,刚开始用system(),但这样其实做是有问题的。


1,system()

用sestem()打开一个文件后,本程序等待,直到打开的文件关闭后本程序才继续执行。

不理解的话请看下面这个例子:
<span style="white-space:pre">	</span>cout<<"a"<<endl;
	system("说明.txt");
	cout<<"b"<<endl;



执行时先输出a,然后打开  《说明.txt 》 文档,当文档关闭后才输出b。


2,ShellExecute()

用这个函数的话就能解决上述问题,它的用法是ShellExecute(NULL,"open","说明.txt",NULL,NULL,SW_SHOW)

它返回HINSTANCE,强制转换为整数后比32大执行成功,比32小执行失败

if( (int)ShellExecute(NULL,"open","说明.txt",NULL,NULL,SW_SHOW)<32 )
	return false;

这个函数还可以打开一个网页,和一些其他操作。

3,其他
其他还有WinExec(),它只对16位机子兼容。
execle(),它不是标准库函数,在process.h里,具体用法大家自己百度吧。

posted @ 2014-10-14 21:24  五十风  阅读(206)  评论(0编辑  收藏  举报