如何用c++获取当前程序自身的完整路径

如何用c++获取当前程序自身的完整路径,第1张

用GetModuleFileName这个函数就可以做到了,完整代码如下,自己编译运行下就知道了

#include <stdioh>

#include <windowsh>

int main()

{

char ExeFile[200];

//得到当前文件路径

GetModuleFileName(NULL,ExeFile,200);

printf("当前文件路径为:\n");

printf("%s\n",ExeFile);

return 0;

}

获取当前目录绝对路径:set current_path="%cd%" 比如要运行子目录的dir1\testcmd就直接加入下面一行%current_path%\dir1\testcmd

C语言里

在main函数的第二个参数里面,

保存着当前程序运行的目录

也就是argv[0]

main( int argc, char argv[])

{

printf("%s ", argv[0] );

}

就是文件当前所在位置

不过需要注意的一点是

这个路径里面保存了当前文件的文件名

如果你只是需要路径的话还需要自己 *** 作一下

main(int a,char c[])

{

char s[100];

int i;

//把路径保存到字符串s里

strcpy(s,c[0]);

for(i=strlen(s); i>0 ; i--)

if( s[i] == '\\')

{

s[i]='\0';

break;

}

//找到最后一个 \ 并删除之后的内容

//最后输出的s,就是当前文件的路径了

puts(s);

}

很简单:

API函数:

GetModuleFileName(模块句柄,保存的字符数组,字符数组的大小);

一般来说,要获取正在运行程序的全路径,那就在第一个参数写个0

参数2是保存的数组,获取的路径将保存在这个数组

参数三是字符数组的大小

给你一个示例程序:

#include <windowsh>

#include <stdioh>

void main()

{

char ExePlace[1024];/保存地址的数组/

GetModuleFileName(0,ExePlace,1024);/获取当前运行全路径/

puts(ExePlace);/输出获取到的路径/

}

1、首先打开Excel数据表,在开发工具中打开VBA编辑器。

2、在单元格区域当中输入一些内容。

3、在VBA编辑器中插入模块。

4、Sub获取文件路径()Dim filess, tempfiless=ApplicationGetOpenFilename(, , "打开文件")If filess=False Then MsgBox "你未选择文件,程序即将退出!": Exit Subtemp=Split(filess, "\")。

5、MsgBox "你选择的《" & temp(UBound(temp)) & "》的路径为:" & Chr(10) & filess _

& Chr(10) & "当前表路径为:" & Chr(10) & ThisWorkbookFullName, vbokonty+64,"返回路径"End Sub。在模块当中输入代码,然后运行。

6、然后单击“执行”按钮,程序d出“选择文件”对话框。选择一个文件后,程序立即d出所选文件的路径,然后d出当前工作簿的路径。

以上就是关于如何用c++获取当前程序自身的完整路径全部的内容,包括:如何用c++获取当前程序自身的完整路径、bat 获取当前目录路径,以绝对路径的方式运行程序、c语言如何获得文件当前路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9343790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存