您的代码试图在当前目录中创建文件,但 GetCurrentDirectory() 发生异常。为了理解这个问题,让我们深入研究一下所使用的参数:
此外,使用 GetCurrentDirectory() 检索可执行路径并不可靠。请改用 GetModuleFileName 函数:
TCHAR buffer[MAX_PATH] = { 0 }; GetModuleFileName(NULL, buffer, MAX_PATH);
要获得更全面的方法,请考虑使用以下函数来提取不带文件名的目录:
#include <windows.h> #include <string> #include <iostream> std::wstring ExePath() { TCHAR buffer[MAX_PATH] = { 0 }; GetModuleFileName(NULL, buffer, MAX_PATH); std::wstring::size_type pos = std::wstring(buffer).find_last_of(L"\/"); return std::wstring(buffer).substr(0, pos); }
以上是为什么 GetCurrentDirectory() 在尝试创建文件时抛出异常?的详细内容。更多信息请关注PHP中文网其他相关文章!