首页
社区
课程
招聘
[旧帖] [求助]如何在驱动里获得pe文件的版本信息。公司名称等。信息 0.00雪花
发表于: 2007-12-1 19:34 5690

[旧帖] [求助]如何在驱动里获得pe文件的版本信息。公司名称等。信息 0.00雪花

2007-12-1 19:34
5690
就像以下代码功能一样。获得信息
  DWORD dwLen, dwUseless;
    LPTSTR lpVI;
    std::string companyName;
    UINT verMajor;

    dwLen = GetFileVersionInfoSize((LPTSTR)szFile, &dwUseless);
    if (dwLen==0)
        return 0;

    lpVI = (LPTSTR) GlobalAlloc(GPTR, dwLen);
    if (lpVI)
    {
        DWORD dwBufSize;
        VS_FIXEDFILEINFO* lpFFI;
        BOOL bRet = FALSE;
        WORD* langInfo;
        UINT cbLang;
        TCHAR tszVerStrName[128];
        LPVOID lpt;
        UINT cbBufSize;

        GetFileVersionInfo((LPTSTR)szFile, NULL, dwLen, lpVI);

        if (VerQueryValue(lpVI, _T("\\"),
            (LPVOID *) &lpFFI, (UINT *) &dwBufSize))

        {
            //We now have the VS_FIXEDFILEINFO in lpFFI
            verMajor = HIWORD(lpFFI->dwFileVersionMS);
        }
        //Get the Company Name.
        //First, to get string information, we need to get
        //language information.
        VerQueryValue(lpVI, _T("\\VarFileInfo\\Translation"),
                      (LPVOID*)&langInfo, &cbLang);
        //Prepare the label -- default lang is bytes 0 & 1
        //of langInfo
        wsprintf(tszVerStrName, _T("\\StringFileInfo\\
                                      %04x%04x\\%s"),
                 langInfo[0], langInfo[1], _T("CompanyName"));
        //Get the string from the resource data
        if (VerQueryValue(lpVI, tszVerStrName, &lpt, cbBufSize))
            companyName.assign((LPTSTR)lpt);    //*must* save this

        //Cleanup
        GlobalFree((HGLOBAL)lpVI);
    }
请问驱动级如何实现。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 200
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你想要什么样的接口?
直接磁盘扇区定位文件,然后自己解析文件格式行不行吖?
2007-12-2 17:06
0
雪    币: 242
活跃值: (269)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
可以。zwopenfile这样打开然后读取。但是不知道文件格式
2007-12-5 15:22
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我的积分终于大于10了
2008-1-11 16:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哈哈 ,我也要学习
2008-1-13 20:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
路过!!
2008-1-13 21:05
0
游客
登录 | 注册 方可回帖
返回
//