Как проверить файл exe ли это? - Free Pascal
Формулировка задачи:
Знаю, что eсли первые два символа MZ, то это файл EXE. Кто-нибудь может написать примерно код, как проверить файл exe или нет?
Решение задачи: «Как проверить файл exe ли это?»
textual
Листинг программы
- {$mode objfpc}
- {$H+}
- uses
- Windows;
- var
- fn : string = 'd:\test\project1.exe';
- res : DWORD;
- begin
- if GetBinaryType(PChar(fn), res) then
- begin
- writeln(res); // список кодов есть в MSDN
- end
- else writeln('non-executable');
- end.
Объяснение кода листинга программы
- Объявлена переменная fn типа string, которая содержит путь к файлу для проверки.
- Объявлена переменная res типа DWORD, которая будет использоваться для хранения результата функции GetBinaryType.
- Выполнена проверка на наличие ошибки при вызове функции GetBinaryType с передачей в нее пути к файлу в виде PChar(fn) и указатель на переменную res.
- Если функция GetBinaryType вернула значение без ошибок, то выполняется запись в консоль значения переменной res.
- Если функция GetBinaryType вернула ошибку, то выполняется запись в консоль строки
non-executable
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д