我正在尝试读取.exe文件数据,但我使用的方法不适用于.exe文件。 这是我的代码:
FILE* file = fopen("SimpleApp.exe", "rb");
BYTE buffer[1024];
long file_size;
memset(&buffer, 0, sizeof(buffer));
if (file == NULL) {
printf("File cannot be loaded. Error %d", GetLastError());
getchar();
return GetLastError();
}
fseek(file, 0, SEEK_END);
file_size = ftell(file);
fseek(file, 0, SEEK_SET);
printf("File size; %d", file_size);
fread(&buffer, sizeof(BYTE), 1000, file);
file_size变量为0。但是当我将文件名从SimpleApp.exe更改为例如text.txt时,file_size具有关联的大小。为什么会这样?