我注意到,如果CreateFile
函数的路径参数以目标为目标\Windows\System32\
,则调用失败并出现以下错误代码ERROR_PATH_NOT_FOUND
。
文件路径是正确的,我是文件夹的所有者,所以问题是为什么调用失败?MS是否添加了禁止访问文件夹的特殊策略?
示例代码:
TCHAR szFile[MAX_PATH];
PathCombine(szFile, g_szSystemDirectory, "settings.ini");
HANDLE hFile = CreateFile(szFile,
GENERIC_READ,
0,
NULL,
OPEN_EXISTING,
0,
NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
printf("INVALID FILE: %i", GetLastError());
return FALSE;
}