| |
|
|
| CompileMarkSeparationSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Datei: den Typ einer ausführbaren Datei ermitteln
PRFellow-Vorlage
Autor: Thomas Hölzer
Typ einer ausführbaren Datei ermitteln
Def SHGetFileInfo(5) !SHELL32,SHGetFileInfoA
Def LoWord(1) And(&(1),$FFFF)
Def ExeID(1) Add$(Chr$(And(&(1),$FF)),Chr$(Div&(&(1),$100)))
Im niedrigen Word stehen MZ,NE oder PE
Declare fname#,SFI#
Proc GetExeType
Parameters fname$
Declare type$
FindFirst$(fname$)
IfNot %IOResult
Dim fname#,Add(Len(fname$),1)
Dim sfi#,352
String fname#,0=fname$
Let type$=ExeID(LoWord(SHGetFileInfo(fname#,0,sfi#,352,$2000)))
Dispose sfi#
Dispose fname#
EndIf
If Equ$(type$,MZ)
Return DOS
ElseIf Equ$(type$,NE)
Return Win16
ElseIf Equ$(type$,PE)
Return Win32
Else
Return Unbekannt
EndIf
EndProc
Beispiel
WindowTitle Typ einer ausführbaren Datei ermitteln
Cls
GetExeType Add$($WinPath,EXPLORER.EXE)
print EXPLORER.EXE =,$(0)
GetExeType Add$($WinPath,WINHELP.EXE)
print WINHELP.EXE =,$(0)
GetExeType C:AUTOEXEC.BAT
print AUTOEXEC.BAT =,$(0)
WaitInput
|
|
|
| |
|
|