获取程序路径的方法

转自:http://dev.firnow.com/course/3_program/c++/cppjs/20100721/476794.html

用vc写程序时经常要获取程序的路径主要有以下三种方法
1,.//是的到应用程序的当前目录,但当前目录不一定等于应用程序执行文件的所在目录,一个应用程序被启动时,当前目录是可以被任意设置的。
2,GetCurrentDirectory同./

3,GetModuleFileName()得到模块的完整路径名,例如,你载入c:/windows/system32/mfc.dll,得到模块句柄h,则你可以用GetModuleFileName()得到h模块的完整路径名
1和2获取的是路径名,而3获取的是全路径名


GetModuleFileName函数原型
DWORD GetModuleFileName(
HMODULE hModule, // handle to module。将要得到的模块的句柄。如果是当前模块,NULL
LPTSTR lpFilename, // path buffer 得到的文件名。
DWORD nSize // size of buffer 一般MAX_PATH就可以了
);
可以通过以下方法获取路径名

char szCurPath[MAX_PATH];//定义一个字符串数据,长度为MAX_PATH ,MAX_PATH是预定义的宏,一般是个数字常量如256

GetModuleFileName(NULL,szCurPath,_MAX_PATH);

char* p = szCurPath;

while(strchr(p,'//'))
{
p = strchr(p,'//');
p++;
}

*p = '/0';

CString strSwfname = szCurPath;
szCurPath就是去除文件名的路径名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值