Declare Function GetBinaryType Lib "kernel32" Alias "GetBinaryTypeA" _
(ByVal lpApplicationName As String, lpBinaryType As Long) As Long 'Costanti Public Const SCS_32BIT_BINARY = 0 Public Const SCS_DOS_BINARY = 1 Public Const SCS_OS216_BINARY = 5 Public Const SCS_PIF_BINARY = 3 Public Const SCS_POSIX_BINARY = 4 Public Const SCS_WOW_BINARY = 2 'Funzione di Test Public Function FileExeOS(TestFile as String) as String Dim exe As Long, TypeB As Long exe = GetBinaryType(Text1.Text, TypeB) If exe = 1 Then 'il file e' un'eseguibile Select Case TypeB Case SCS_32BIT_BINARY FileExeOS = "Programma a 32 Bit per Windows" Case SCS_WOW_BINARY FileExeOS = "Programma a 16 Bit per Windows" Case SCS_DOS_BINARY FileExeOS = "Programma per DOS" Case SCS_OS216_BINARY FileExeOS = "Programma per OS/2" Case SCS_PIF_BINARY FileExeOS = "Programma Windows generico, File PIF" Case SCS_POSIX_BINARY FileExeOS = "File in formato eseguibile POSIX (Unix)" End Select Else FileExeOS = "" 'il file non e' un eseguibile End If End Function |