Dieser Code ist aber ein schlechtes Beispiel.
Da verschwendet man Minuten, nur um dann mitzubekommen, dass maximal der letzte Kommentar halbwegs wichtige Informationen enthält.
Alles davor ist absolut sinnlos und stellt nur doppelte Informationen für den eigentlich "selbsterklärenden Code dar.
Wichtige Informationen gehen durch Sinnlose Kommentare schnell mal verloren, bzw. man sieht sie garnicht erst, weil man keine Lust mehr hat sich ständig sinnloses Zeug durchzulesen.
Im Gegenzug fehlt dafür die Beschreibung der Fuktion selbst und IsWow64
A ist auch falsch, da es hier "dynimisch" implementiert wurde und nicht als
ANSI.
Delphi-Quellcode:
/// <summary> Determines whether the specified process is running under WOW64.<br /> WOW64 is the x86
/// emulator that allows 32-bit Windows-based applications to run seamlessly on 64-bit Windows </summary>
function IsWow64: Boolean;
type
TIsWow64Process =
function(
Handle: THandle;
var Res: BOOL): BOOL;
stdcall;
var
IsWow64Process: TIsWow64Process;
IsWow64Result: BOOL;
begin
IsWow64Process := GetProcAddress(GetModuleHandle('
kernel32'), '
IsWow64Process');
if Assigned(IsWow64Process)
then begin
if not IsWow64Process(GetCurrentProcess, IsWow64Result)
then
RaiseLastOSError;
//RaiseLastWin32Error; //raise Exception.Create(SysErrorMessage(GetLastError));
Result := IsWow64Result;
end else
Result := False;
// Function not implemented: can't be running on Wow64
end;
Oder als kurzer Inlinetype.
Delphi-Quellcode:
var
IsWow64Process:
function(
Handle: THandle;
var Res: BOOL): BOOL;
stdcall;
IsWow64Result: BOOL;
So würde explizit
ANSI (A) oder
Unicode (W) verwendet.
Das Andere passt sich jeweils an die vom Delphi "standardmäßig" verwendete
API-Version an. (
Unicode seit D2009)
Delphi-Quellcode:
IsWow64Process := GetProcAddressA(GetModuleHandleA('kernel32'), 'IsWow64Process');
IsWow64Process := GetProcAddressW(GetModuleHandleW('kernel32'), 'IsWow64Process');
/// <summary>
ist die etwas menschenlesbare Version des DocInsight, was die Erweiterung zum HelpInsight darstellt.
Normal z.B. so:
Delphi-Quellcode:
// Determines whether the specified process is running under WOW64.
// WOW64 is the x86 emulator that allows 32-bit Windows-based applications to run seamlessly on 64-bit Windows
HelpInsight : Das zeigt als Hint im Delphi die Funktionsdeklaration an.
DocInsight : Das zeigt stattdessen explizite HilfeInfos an (DelphiDoc ala
PHPDoc)
Documentation Insight : erweiteres HelpInsight samt integriertem Editor und Hilfegenerator (Dokumentierter Code -> Programm-Hilfe ala .hlp, .chm usw.) ... leider hatte Delphi das nur 2 Jahre lang direkt integriert und hat nur wieder nur die "manuellen" Code-Vorlagen dabei