zoukankan      html  css  js  c++  java
  • 获取File Version 和Product Version

    #include <stdio.h>
    #include <windows.h>

    #ifndef nullptr
     #define nullptr NULL
    #endif

    int _tmain(int argc, _TCHAR* argv[])
    {
        if (argc > 1)
        {
            DWORD dwSize = GetFileVersionInfoSize(argv[1], nullptr);
            if (dwSize > 0)
            {
                BYTE* pBlock = (BYTE*)malloc(dwSize);
                if (pBlock != nullptr)
                {
                    if (GetFileVersionInfo(argv[1], 0, dwSize, pBlock))
                    {
                        VS_FIXEDFILEINFO* pFixedFileInfo = nullptr;
                        UINT uSize = 0;
                        if (VerQueryValue(pBlock, _T("\"), (void**)&pFixedFileInfo, &uSize) &&
                            (uSize == sizeof(VS_FIXEDFILEINFO)))
                        {
                            printf("File Version: %d.%d.%d.%d ",
                                         pFixedFileInfo->dwFileVersionMS >> 16,
                                         pFixedFileInfo->dwFileVersionMS & 0xFFFF,
                                         pFixedFileInfo->dwFileVersionLS >> 16,
                                         pFixedFileInfo->dwFileVersionLS & 0xFFFF);

                            printf("Product Version: %d.%d.%d.%d ",
                                         pFixedFileInfo->dwProductVersionMS >> 16,
                                         pFixedFileInfo->dwProductVersionMS & 0xFFFF,
                                         pFixedFileInfo->dwProductVersionLS >> 16,
                                         pFixedFileInfo->dwProductVersionLS & 0xFFFF);
                        }
                    }
                    free(pBlock);
                    pBlock = 0;
                }
            }
        }

        return 0;
    }

  • 相关阅读:
    Python 如何计算当前时间减少或增加一个月
    删除 win8.1中的网络1,网络2,宽带连接1,宽带连接2等网络记录
    Office2003/2010等集成SP的简单方法
    win8.1点击“更改电脑设置”无反应(闪退)
    右键菜单添加带图标的Notepad++
    word2010无法打开文件时的一点对策
    在win7/8/10鼠标右键添加“管理员取得所有权”
    VisualSVNServer 无法启动 could not log pid to file
    半年来经销商云平台工作总结-后端
    半年来经销商云平台工作总结-前端
  • 原文地址:https://www.cnblogs.com/yilang/p/12524333.html
Copyright © 2011-2022 走看看