C++ 文件路径操作相关函数、获取dll所在的路径
2016-11-22 09:00
751 查看
首先,记录一个网址,感觉很有用,大部分的文件路径相关函数,里面都有源代码。
https://msdn.microsoft.com/en-us/library/windows/desktop/bb773746(v=vs.85).aspx
1、完整路径,去除后缀名 PathRemoveExtensionA
2、完整文件路径,获得目录
3、获取dll所在路径的两种方式
(1)需要dll入口函数的句柄
(2)无需dll入口函数的句柄,dll内任意函数都可
https://msdn.microsoft.com/en-us/library/windows/desktop/bb773746(v=vs.85).aspx
1、完整路径,去除后缀名 PathRemoveExtensionA
#include <iostream>//cout函数所需 #include "atlstr.h" //PathRemoveExtensionA函数所需 using namespace std; void main(void) { char buffer_1[] = "C:\\TEST\\sample.txt"; char *lpStr1; lpStr1 = buffer_1; cout << "The path with extension is : " << lpStr1 << endl; PathRemoveExtensionA(lpStr1); cout << "\nThe path without extension is : " << lpStr1 << endl; system("pause"); }
OUTPUT: ================== The path with extension is : C:\TEST\sample.txt The path without extension is : C:\TEST\sample
2、完整文件路径,获得目录
#include <iostream>//cout函数所需 #include "atlstr.h" //PathRemoveFileSpecA函数所需 using namespace std; void main(void) { char buffer_1[] = "C:\\TEST\\sample.txt"; char *lpStr1; lpStr1 = buffer_1; cout << "The path with file spec is : " << lpStr1 << endl; PathRemoveFileSpecA(lpStr1); cout << "\nThe path without file spec is : " << lpStr1 << endl; //注意如果获得了目录,需要得到另一个文件路径时 string filename = lpStr1; filename = filename + "\\samle.txt"; system("pause"); }
OUTPUT: ================== The path with file spec is : C:\TEST\sample.txt The path without file spec is : C:\TEST
3、获取dll所在路径的两种方式
(1)需要dll入口函数的句柄
char szPath[MAX_PATH]; GetModuleFileNameA(dllhandle, szPath, MAX_PATH);//BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) //dll入口函数
(2)无需dll入口函数的句柄,dll内任意函数都可
EXTERN_C IMAGE_DOS_HEADER __ImageBase;//申明为全局变量 char DllPath[MAX_PATH] = { 0 }; GetModuleFileNameA((HINSTANCE)&__ImageBase, DllPath, _countof(DllPath));
相关文章推荐
- C++常用的文件操作路径函数
- 如何获取dll文件所在路径?
- [C/C++]_[初级]_[使用C字符串(或者std::string)处理函数获取文件所在目录
- c/c++ 文件操作相关的常用函数
- windows命令行文件中获取bat文件所在目录相关路径
- [C++]涉及文件操作的各种函数整理, 提供文件及路径常用操作
- 获取bash文件所在的目录绝对路径以及获取函数方法名称
- C/C++ 下获取文件的信息,学习 _finddata_t 结构体用法 及相关函数用法的
- c++判断文件是否存在,判断是文件还是目录,获取文件大小,获取程序所在路径
- C++常用的文件操作路径函数
- C++ sdk 获取执行文件所在路径
- 文件路径相关的字符串操作
- C文件操作相关函数解析
- python 文件和路径操作函数小结
- JS获取本地文件所在的绝对路径
- c#中文件操作的一些相关函数
- Delphi 7文件路径相关的字符串操作
- 获取当前文件所在路径
- 批处理文件中获取当前所在路径的几种方法
- jsp获取文件所在路径