对于C:/pagefile.sys这样的文件,调用GetFileAttributes将返回INVALID_FILE_ATTRIBUTES,而调用GetLastError将返回ERROR_SHARING_VIOLATION。然而,检索有关系统文件的信息绝对是可能的-例如,能够区分它是一个文件还是一个目录。有解决办法吗?
发布于 2015-01-18 22:54:42
使用FindFirstFile可以获取pagefile.sys文件的信息。您可以从ffd获取该文件的其他信息。
WIN32_FIND_DATA ffd;
HANDLE hFind = FindFirstFile( "C:\\pagefile.sys", &ffd );
if ( INVALID_HANDLE_VALUE == hFind )
{
return 0;
}
if ( !( ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY ) )
{
_int64 filesize = ffd.nFileSizeHigh;
filesize <<= 32;
filesize |= ffd.nFileSizeLow;
printf( "%s is %I64u bytes", ffd.cFileName, filesize );
}
FindClose( hFind );https://stackoverflow.com/questions/16772931
复制相似问题