Код: Выделить всё
_int64 FileSize(const wchar_t* name)
{
WIN32_FILE_ATTRIBUTE_DATA fad;
if (!GetFileAttributesEx(name, GetFileExInfoStandard, &fad))
return -1; // error condition, could call GetLastError to find out more
LARGE_INTEGER size;
size.HighPart = fad.nFileSizeHigh;
size.LowPart = fad.nFileSizeLow;
return size.QuadPart;
}
Я пытался использовать функцию _stat64(), но возникла проблема с преобразованием wchar_t* в char*:
Код: Выделить всё
_int64 FileSize(const wchar_t* name) {
struct _stat64i32 buf;
int result;
char timebuf[26];
//char* filename = "crt_stat.c";
errno_t err;
result = _wstat64(name, &buf);
return buf.st_size;
}
Аргумент типа «_stat64i32 *» несовместим с параметром типа "_stat64 *".
Подробнее здесь: https://stackoverflow.com/questions/788 ... e-in-c-x64
Мобильная версия