在软件开发领域,经常需要检索与动态链接库相关的版本信息( DLL)和可执行程序(EXE)。通过利用可通过 C 或 C 语言访问的 Win32 本机 API,开发人员可以无缝获取这些可执行实体的产品和文件版本。
解锁版本信息的关键位于 GetFileVersionInfo API 中。这个强大的函数用与指定 DLL 或 EXE 文件相关的数据填充缓冲区。让我们深入研究其用法的复杂性:
以下代码示例说明了 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>
总之,GetFileVersionInfo API 为以编程方式从 DLL 和 EXE 获取版本信息提供了全面的解决方案。通过利用此功能,开发人员可以自动执行版本检索任务,确保软件开发工作的准确性和效率。
以上是如何以编程方式获取 DLL 和 EXE 的版本信息?的详细内容。更多信息请关注PHP中文网其他相关文章!