Heim >Backend-Entwicklung >C++ >Wie kann ich Versionsinformationen von DLLs und EXEs mithilfe der Win32-API in C oder C abrufen?
Viele Anwendungen erfordern die Möglichkeit, Versionsinformationen aus Dateien abzurufen. Diese Informationen werden zu Anzeigezwecken verwendet, beispielsweise zur Anzeige der Versionsnummer im Eigenschaftendialogfeld.
Die Win32-API bietet mehrere Funktionen, die zum Abrufen von Versionsinformationen verwendet werden können. Ein gängiger Ansatz ist die Verwendung der GetFileVersionInfo-API.
Die GetFileVersionInfo-Funktion ruft Informationen über die Versionsressourcen einer Datei ab. Die Schritte zur Verwendung dieser Funktion sind:
Sobald die Versionsinformationen abgerufen wurden, können Sie sie mit der Funktion „VerQueryValue“ extrahieren spezifische Informationen. Der folgende Beispielcode zeigt, wie die Produktversions- und Dateiversionsnummern extrahiert werden:
LPSTR verData = new char[verSize]; if (GetFileVersionInfo(szVersionFile, verHandle, verSize, verData)) { if (VerQueryValue(verData, "\", (VOID FAR* FAR*)&lpBuffer, &size)) { if (size) { VS_FIXEDFILEINFO *verInfo = (VS_FIXEDFILEINFO *)lpBuffer; if (verInfo->dwSignature == 0xfeef04bd) { TRACE("File Version: %d.%d.%d.%d\n", (verInfo->dwFileVersionMS >> 16) & 0xffff, (verInfo->dwFileVersionMS >> 0) & 0xffff, (verInfo->dwFileVersionLS >> 16) & 0xffff, (verInfo->dwFileVersionLS >> 0) & 0xffff ); } } } }
Durch Befolgen dieser Schritte können Sie die Produktversions- und Dateiversionsnummern für DLLs oder EXE-Dateien mithilfe nativer Win32-APIs programmgesteuert abrufen in C oder C .
Das obige ist der detaillierte Inhalt vonWie kann ich Versionsinformationen von DLLs und EXEs mithilfe der Win32-API in C oder C abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!