GetModuleFileName的用法

一般说来,要想获得一个文件的相对路径是极其重要的。

比如项目的移植,代码里面加载项目的资源文件如果用的是绝对路径,就像C:\\....这样的,到其他的PC上面就改变了,就无法成功执行了。

那么我们就需要用到GetModuleFileNameW

下面一个简单的DEMO供大家参考,可以直接拷到电脑里面运行。

#include <Windows.h>
#include <Shlwapi.h>
#pragma comment (lib,"Shlwapi.lib")

int main()
{
	WCHAR path[MAX_PATH];
	GetModuleFileNameW(NULL, path, MAX_PATH);
	PathRemoveFileSpecW(path);
	PathAppendW(path, L"gifs\\panda.jpg");

	ShellExecute(NULL, NULL, path, NULL, NULL, SW_SHOWNORMAL);
	return 0;
}

 

可以看到是Debug下的,就资源文件放到可执行文件目录即可

 

 

   GetCurrentDirectory(MAX_PATH,path);
   PathCombine(path, path, TEXT("..\\.."));

返回当前进程的目录路径,PathCombine是增删路径,上面是返回上上级路径

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值