NAME

GetBinaryTypeW  (KERNEL32.@)

SYNOPSIS

 BOOL GetBinaryTypeW
 (
  LPCWSTR name,
  LPDWORD type
 )

DESCRIPTION

Determine whether a file is executable, and if so, what kind.

PARAMS

lpApplicationName [In] Path of the file to check.
lpBinaryType [Out] Destination for the binary type.

RETURNS

TRUE, if the file is an executable, in which case lpBinaryType is set. FALSE, if the file is not an executable or if the function fails.

NOTES

The type of executable is a property that determines which subsystem an executable file runs under. lpBinaryType can be set to one of the following

values: SCS_32BIT_BINARY: A Win32 based application SCS_64BIT_BINARY: A Win64 based application SCS_DOS_BINARY: An MS-Dos based application SCS_WOW_BINARY: A Win16 based application SCS_PIF_BINARY: A PIF file that executes an MS-Dos based app SCS_POSIX_BINARY: A POSIX based application ( Not implemented ) SCS_OS216_BINARY: A 16bit OS/2 based application.

To find the binary type, this function reads in the files header information. If extended header information is not present it will assume that the file is a MS-DOS® executable. If extended header information is present it will determine if the file is a 16, 32 or 64 bit Windows® executable by checking the flags in the header.

".com" and ".pif" files are only recognized by their file name extension, as per native Windows®.

IMPLEMENTATION

Declared in "winbase.h". https://source.winehq.org/source/include/winbase.h

Implemented in "dlls/kernel32/module.c". https://source.winehq.org/source/dlls/kernel32/module.c

Debug channel "module".


Copyright © 2024 The Wine Project. All trademarks are the property of their respective owners. Visit WineHQ for license details. Generated Apr 2024.