首页 > 解决方案 > 获取拥有可执行文件的当前路径(C++)

问题描述

StackOverflow 上的所有内容都说要使用一堆不同的方法来获取可执行文件的完整路径。问题是这些方法都没有获得可执行文件的路径。他们获得了可执行文件执行时所在的路径。如果您运行可执行文件然后移动它,那么您获得的路径始终是您运行它的路径。我怎样才能找到它实际所在的路径?

标签: c++winapipath

解决方案


GetFileInformationByHandleEx当正在运行的可执行文件在该设备内移动时, with 选项FileNameInfo返回当前设备上的当前路径,没有驱动器指示符。要使用它,您显然需要在程序启动时打开文件以进行读取(在移动之前)。要在启动时获取可执行文件的路径,您可以使用GetModuleFileName.


推荐阅读