Как проверить файл exe ли это? - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Знаю, что eсли первые два символа MZ, то это файл EXE. Кто-нибудь может написать примерно код, как проверить файл exe или нет?

Решение задачи: «Как проверить файл exe ли это?»

textual
Листинг программы
  1. {$mode objfpc}
  2. {$H+}
  3.  
  4. uses
  5.   Windows;
  6. var
  7.   fn : string = 'd:\test\project1.exe';
  8.   res : DWORD;
  9. begin
  10.   if GetBinaryType(PChar(fn), res) then
  11.   begin
  12.     writeln(res); // список кодов есть в MSDN
  13.   end
  14.   else writeln('non-executable');
  15. end.

Объяснение кода листинга программы

  1. Объявлена переменная fn типа string, которая содержит путь к файлу для проверки.
  2. Объявлена переменная res типа DWORD, которая будет использоваться для хранения результата функции GetBinaryType.
  3. Выполнена проверка на наличие ошибки при вызове функции GetBinaryType с передачей в нее пути к файлу в виде PChar(fn) и указатель на переменную res.
  4. Если функция GetBinaryType вернула значение без ошибок, то выполняется запись в консоль значения переменной res.
  5. Если функция GetBinaryType вернула ошибку, то выполняется запись в консоль строки non-executable.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы