Im Bereich der Softwareentwicklung ist es häufig erforderlich, die Versionsinformationen abzurufen, die mit dynamischen Linkbibliotheken verknüpft sind ( DLLs) und ausführbaren Programmen (EXEs). Durch die Verwendung nativer Win32-APIs, auf die über C oder C zugegriffen werden kann, können Entwickler nahtlos die Produkt- und Dateiversionen dieser ausführbaren Einheiten erwerben.
Der Schlüssel zum Freischalten von Versionsinformationen liegt in der GetFileVersionInfo-API. Diese leistungsstarke Funktion füllt einen Puffer mit Daten, die sich auf die angegebene DLL- oder EXE-Datei beziehen. Lassen Sie uns in die Feinheiten seiner Verwendung eintauchen:
Der folgende Code Das Beispiel veranschaulicht die praktische Anwendung der GetFileVersionInfo-API:
<code class="python">DWORD verHandle = 0; UINT size = 0; LPBYTE lpBuffer = NULL; DWORD verSize = GetFileVersionInfoSize(szVersionFile, &verHandle); if (verSize != NULL) { 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) { // Parse the file version into a four-part dotted string TRACE("File Version: %d.%d.%d.%d\n", (verInfo->dwFileVersionMS >> 16) & 0xffff, (verInfo->dwFileVersionMS >> 0) & 0xffff, (verInfo->dwFileVersionLS >> 16) & 0xffff, (verInfo->dwFileVersionLS >> 0) & 0xffff ); } } } } delete[] verData; }</code>
Zusammenfassend lässt sich sagen, dass die GetFileVersionInfo-API eine umfassende Lösung zum programmgesteuerten Abrufen von Versionsinformationen von DLLs und EXEs bietet. Durch die Nutzung dieser Funktionalität können Entwickler Aufgaben zum Abrufen von Versionen automatisieren und so Genauigkeit und Effizienz bei ihren Softwareentwicklungsbemühungen sicherstellen.
Das obige ist der detaillierte Inhalt vonWie erhalte ich programmgesteuert Versionsinformationen für DLLs und EXEs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!