2.1GBくらいのファイルまではうまく取得できるのですが
3.1GBのファイルを開いてみたら-1095716864と出てきて、
明らかにうまく取得できませんでした。
どこがおかしいのでしょうか・・・・
#include <stdio.h>
#include <conio.h>
#include <windows.h>
DWORD FileSize(char *name){
HANDLE hFile;
DWORD size;
hFile = CreateFile(name , GENERIC_READ, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL );
size = GetFileSize( hFile, NULL );
CloseHandle( hFile );
return size;
}
int main(int argc,char* argv[]){
printf("size=%d",FileSize(argv[1]));
getch();
}