Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Frage zu psapi.dll Imports (https://www.delphipraxis.net/160058-frage-zu-psapi-dll-imports.html)

Zacherl 25. Apr 2011 22:58

Frage zu psapi.dll Imports
 
Hey,

bei meinen MSDN Recherchen zu MSDN-Library durchsuchenGetModuleFileNameEx und MSDN-Library durchsuchenGetProcessImageFileName stieß ich auf folgende Beschreibung:
Zitat:

Kernel32.dll on Windows 7 and Windows Server 2008 R2, Psapi.dll if PSAPI_VERSION=1 on Windows 7 and Windows Server 2008 R2, Psapi.dll on Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP/2000
Dieser Text bezieht sich darauf, welche DLL die entsprechende Funktion jetzt importiert.

Wie darf ich diesen Text verstehen? Kann ich die Funktionen gefahrlos IMMER aus der psapi.dll importieren oder muss ich teilweise die kernel32.dll verwenden. Bei meinen lokalen Tests auf Win7 SP 1 und einem XP SP3 System funktioniert es lediglich mit dem psapi.dll Import.

Viele Grüße
Zacherl

sx2008 25. Apr 2011 23:07

AW: Frage zu psapi.dll Imports
 
Zuerst versuchen die Funktionen aus kernel32.dll (dynamisch mit GetProcAddress()) zu laden; falls das fehlschlägt ein Fallback auf Psapi.dll versuchen.
Falls das ebenfalls fehlschlägt: Exception.
Was man nicht tun sollte ist die Windows-Version abzufragen um darauf hin zu entscheiden, ob kernel32 oder psapi gebraucht wird.

Zacherl 25. Apr 2011 23:32

AW: Frage zu psapi.dll Imports
 
Alles klar vielen Dank! Habe das jetzt mal umgesetzt:
http://www.delphipraxis.net/160046-d...ermitteln.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz