C++ WinAPI - 如何从可执行文件的名称中获取其安装路径
C++ WinAPI - How to get the installation path of an executable from its name
有没有办法通过使用可执行文件的名称来获取可执行文件(不是self)的安装路径。假设我想从进程列表快照查找正在运行的进程(例如:"记事本.exe")安装在硬盘驱动器上的路径。
最好
进程列表为您提供每个正在运行的进程的完整路径和文件名。只需枚举列表,仅查看每个路径的文件名部分,当您找到感兴趣的文件名时,只需截断路径中的文件名并根据需要使用剩余的文件夹路径即可。
进程列表快照是否包含该信息。
事后重建这些信息是不可能的。 即使您还具有与进程列表快照匹配的确切磁盘状态的快照,磁盘上也可能有多个具有相同文件名的文件。
列出进程时获取可执行路径,并将其存储在快照中。 一旦进程退出,为时已晚。
您可能可以使用SearchPath()
函数。
这些函数应该会有所帮助
HMODULE WINAPI GetModuleHandle(
_In_opt_ LPCTSTR lpModuleName
);
然后
DWORD WINAPI GetModuleFileName(
_In_opt_ HMODULE hModule,
_Out_ LPTSTR lpFilename,
_In_ DWORD nSize
);
相关文章:
- 从 GUID 获取 USB 卷路径
- 获取当前正在运行的 exe 名称(不是路径)
- 如何从 Skia 路径几何体中获取网格?
- 从 C 中的变量获取文件的路径,C++
- 获取 H5::D ataSet 的hid_t和文件中的路径以使用 H5OCopy
- 如何获取 CMake 单元测试的相对路径?
- 如何获取当前用户的默认RAS电话簿路径?
- 我应该如何获取配置文件的绝对路径与 Windows .exe一起发布?
- 获取每个目录或子目录中第一个文件的路径
- 如何自动获取我的项目的路径并删除一些文件
- 获取 JAR 文件中二进制文件的路径
- 如何使用提升获取当前文件路径?
- 如何在 c++ 中获取当前文件路径?
- 无法获取进程 ID 4 (ntoskrnl.exe) 的可执行路径
- Qt表查看单元格中的显示图像并在单击时获取路径
- 获取路径删除和串联字符
- 如何从CMFCEditBrowseCtrl获取路径文本
- Qt和Android-从图库中的图像获取路径
- 用于从需要路径的代码中获取路径和文件名的RegEx
- 如何使用QModelIndex从QStandardItemModel获取路径