Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Определить тип EXE-файла

Delphi , Программа и Интерфейс , EXE файл

Определить тип EXE-файла

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

 function GetEXEType(FileName: string): string;
 var
   BinaryType: DWORD;
 begin
   if GetBinaryType(PChar(FileName), Binarytype) then
     case BinaryType of
       SCS_32BIT_BINARY: Result := 'Win32 executable';
       SCS_DOS_BINARY: Result   := 'DOS executable';
       SCS_WOW_BINARY: Result   := 'Win16 executable';
       SCS_PIF_BINARY: Result   := 'PIF file';
       SCS_POSIX_BINARY: Result := 'POSIX executable';
       SCS_OS216_BINARY: Result := 'OS/2 16 bit executable'
         else
           Result := 'unknown executable'
     end
   else
     Result := 'File is not an executable';
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 begin
   label1.Caption := GetEXEType('c:\windows\notepad.exe');
 end;


 { 
 Windows NT/2000: Requires Windows NT 3.5 or later. 
 Windows 95/98: Unsupported. 
}

Функция GetEXEType в Delphi для определения типа файла EXE!

Функция GetEXEType принимает имя файла в качестве входного параметра и возвращает строку, указывающую на тип исполняемого файла. Она использует функцию GetBinaryType из Windows API для определения типа двоичного файла, который затем используется для установки результата.

Разбивка функции:

  1. Функция GetBinaryType вызывается с файлом в качестве входного параметра и результат хранится в переменной BinaryType.
  2. Если файл является исполняемым, case-статements проверяют значение BinaryType для определения его типа:
    • SCS_32BIT_BINARY: Win32-исполняемый файл
    • SCS_DOS_BINARY: DOS-исполняемый файл
    • SCS_WOW_BINARY: Win16-исполняемый файл
    • SCS_PIF_BINARY: файл PIF (файл, содержащий ссылку на исполняемый файл)
    • SCS_POSIX_BINARY: POSIX-исполняемый файл
    • SCS_OS216_BINARY: OS/2 16-битный исполняемый файл
  3. Если файл не является исполняемым, функция возвращает строку "File is not an executable".
  4. Результатовая строка присваивается переменной Result.

В примере кода событий кнопки вызывает функцию GetEXEType с путем к Notepad.exe в качестве входного параметра и отображает результат в лейбле.

Обратите внимание на совместимость: это код требует Windows NT 3.5 или более поздней версии, что несовместимо с Windows 95/98.

В целом, эта функция предоставляет полезный способ определения типа файла EXE в приложениях Delphi!

Функция GetEXEType в Delphi позволяет опреде́лит тип EXE-файла, указав имя файла как параметр, и возвращает строковое значение, соответствующее типу файловой системы.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: EXE файл ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-07-01 23:15:23/0.0034918785095215/0