ソフトウェア開発の領域では、ダイナミック リンク ライブラリ ( DLL) と実行可能プログラム (EXE)。 C または C からアクセスできる Win32 ネイティブ API を利用することで、開発者はこれらの実行可能エンティティの製品およびファイル バージョンをシームレスに取得できます。
バージョン情報のロックを解除する鍵GetFileVersionInfo API にあります。この強力な関数は、指定された DLL または EXE ファイルに関連するデータをバッファに設定します。その使用法の複雑さを詳しく見てみましょう:
次のコード サンプルは、GetFileVersionInfo API の実際のアプリケーションを示しています。
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;
}
結論として、GetFileVersionInfo API は、DLL および EXE からプログラムによってバージョン情報を取得するための包括的なソリューションを提供します。この機能を利用することで、開発者はバージョン取得タスクを自動化し、ソフトウェア開発作業の正確さと効率を確保できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3