获取当前运行的exe文件名和exe所在的目录路径,也是用到了很多次了。不过之前实现的版本都不够完美,代码不够精简。所以用起来还是不爽。而这次已经将代码最精简了,使用起来舒服多了。
处理字符串的函数,见文章《C语言版的字符串截断函数代码实现》,请提前阅读。
处理的效果图如下:
实现代码如下:
#include <windows.h>
#include <stdio.h>
#include <string.h>
void substr_left(char * dest,const char* substr);
void substr_right(char * dest,const char* substr);
void main()
{
char exepath[MAX_PATH]={0};
GetModuleFileName(NULL,exepath,MAX_PATH);
substr_left(exepath,".exe");//获取路径
char exepath2[MAX_PATH]={0};
GetModuleFileName(NULL,exepath2,MAX_PATH);
substr_right(exepath2,"tmp_c.");//获取文件名
printf("exe名称:%s\nexe路径:%s\n",exepath2,exepath);
}