Deploying Windows applications on Linux(Wine) with InnoSetup
First, we need to detect Wine in the InnoSetup script.
function LoadLibraryA(lpLibFileName: PAnsiChar): THandle; external 'LoadLibraryA@kernel32.dll stdcall'; function GetProcAddress(Module: THandle; ProcName: PAnsiChar): Longword; external 'GetProcAddress@kernel32.dll stdcall'; function IsWine: boolean; var LibHandle : THandle; begin LibHandle := LoadLibraryA('ntdll.dll'); Result:= GetProcAddress(LibHandle, 'wine_get_version')<> 0; end;