社区
C语言 帖子详情 怎么查看exe和dll文件的版本信息? 善良超锅锅 2017-12-21 08:37:03 别人给的exe,dll。想集成到自己的代码中。怎么查看exe,dll的版本信息:x86还是x64,debug还是release,用的哪个vs版本。
有这样的工具吗?
...全文
1747 4 打赏 收藏 怎么查看exe和dll文件的版本信息? 别人给的exe,dll。想集成到自己的代码中。怎么查看exe,dll的版本信息:x86还是x64,debug还是release,用的哪个vs版本。 有这样的工具吗? 复制链接
扫一扫 分享 转发到动态 举报
写回复 配置赞助广告取 消
确 定
用AI写文章 4 条回复 切换为时间正序 请发表友善的回复… 发表回复 打赏红包 需支付: 0.00 元 取 消 确 定 赵4老师 2017-12-22 打赏举报 回复 仅供参考:#pragma comment(lib,"version")
#include
#include
void HexDump(char *buf,int len,int addr) {
int i,j,k;
char binstr[80];
len=(int)(*(WORD *)buf);
printf("0x%08X bytes:\n",len);
for (i=0;i if (0==(i%16)) { sprintf(binstr,"%08x -",i+addr); sprintf(binstr,"%s %02x",binstr,(unsigned char)buf[i]); } else if (15==(i%16)) { sprintf(binstr,"%s %02x",binstr,(unsigned char)buf[i]); sprintf(binstr,"%s ",binstr); for (j=i-15;j<=i;j+=2) { sprintf(binstr,"%s%C",binstr,(buf[j]<=0x20&&buf[j+1]==0)?L'.':*(wchar_t *)&buf[j]); } printf("%s\n",binstr); } else { sprintf(binstr,"%s %02x",binstr,(unsigned char)buf[i]); } } if (0!=(i%16)) { k=16-(i%16); for (j=0;j sprintf(binstr,"%s ",binstr); } sprintf(binstr,"%s ",binstr); k=16-k; for (j=i-k;j
sprintf(binstr,"%s%C",binstr,(buf[j]<=0x20&&buf[j+1]==0)?L'.':*(wchar_t *)&buf[j]); } printf("%s\n",binstr); } } int main(int argc,char **argv) { DWORD dwVerHnd; DWORD dwVerInfoSize; VS_FIXEDFILEINFO *pFileInfo; LPVOID lpvMem; HANDLE hMem; unsigned int uInfoSize; WORD m_nProdVersion[4]; if (argc<2) { printf("Usage: %s fullpathfilename.ext [dumpall]\n",argv[0]); return 1; } dwVerInfoSize = GetFileVersionInfoSize(argv[1], &dwVerHnd); if (dwVerInfoSize) { hMem = GlobalAlloc(GMEM_MOVEABLE, dwVerInfoSize); lpvMem = GlobalLock(hMem); GetFileVersionInfo(argv[1], dwVerHnd, dwVerInfoSize, lpvMem); VerQueryValue(lpvMem,"\\",(void**)&pFileInfo, &uInfoSize); m_nProdVersion[0]=HIWORD(pFileInfo->dwProductVersionMS); m_nProdVersion[1]=LOWORD(pFileInfo->dwProductVersionMS); m_nProdVersion[2]=HIWORD(pFileInfo->dwProductVersionLS); m_nProdVersion[3]=LOWORD(pFileInfo->dwProductVersionLS); printf("The file [%s]'s version: %d.%d.%d.%d\n",argv[1], m_nProdVersion[0], m_nProdVersion[1], m_nProdVersion[2], m_nProdVersion[3]); if (argc>2) {//dumpall HexDump((char *)lpvMem,dwVerInfoSize,0); } GlobalUnlock(hMem); GlobalFree(hMem); } else { printf("Can not GetFileVersionInfoSize(%s,...)!\n",argv[1]); } return 0; } Qlaiaqu 2017-12-22 打赏举报 回复 右键属性就可以啊 paschen 2017-12-21 打赏举报 回复 去下载一个PEID可以查看 真相重于对错 2017-12-21 打赏举报 回复 我记的有!具体的名字忘了 exe dll 其实是pe格式的可执行文件,了解一下pe文件! iChat 1.61 用户管理模块源代码 支持ACCESS或SQL SERVER数据库(通过ODBC支持),兼容etchat用户文件格式。 用户注册管理部分用DLL形式从iChat.exe中独立出来。 用户注册、验证部分DLL模块源码公开。 VS DLL文件和EXE文件添加文件版本信息 在VS中可以通过添加资源,然后再在资源中添加Version来显示exe或者dll的版本信息。 Version的编辑界面如下图所示: 编译工程后可以查看dll的属性信息,上面编辑好的信息已经显示在属性界面上了: 单个工程当然就在这里直接编辑信息就好了,如果是多个工程的情况下,每次升级软件版本都要去修改每个Version的信息,不仅麻烦,而且容易出错和漏改。 在vs中右键点击rc文件,选择打开方... 电脑中缺少dll文件怎么解决?电脑dll文件要怎么打开? 使用电脑比较多的用户们平时肯定会用到各种文件的,在电脑的使用过程中也会接触到各种系统文件,想必大家对于电脑中的dll文件都是很熟悉的,尤其是一些电脑的重度用户们,dll文件能够保证电脑中各种软件应用的正常运行,在电脑系统文件中也处于非常重要的地位,不过大家肯定也遇到过dll文件缺失这种情况,那么电脑中缺少dll文件怎么解决?电脑dll文件要怎么打开?下面小编就为大家来详细介绍一下。 修改exe、dll等PE文件的版本信息 ModifyVersionInfo功能: 修改exe、dll文件的版本信息 命令行传参形式: ModifyVersionInfo.exe <-FilePath="x:\test.exe"> [-FileDescription="xxxx"][...] 可使用的参形选项: -FilePath:必须,指定待修改的exe、dll文件路径 -Comments:可选,注释信息,若不指定则使用默认信息 -CompanyName:可选,公司名称,若不指定则使用默认信息 -FileDescrip DLL文件是什么?有几种调用方式? 一、DLL文件是什么?DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件 C语言 70,017 社区成员 243,265 社区内容 发帖 与我相关 我的任务 C语言 C语言相关问题讨论 复制链接 扫一扫 分享 确定 社区描述 C语言相关问题讨论 社区管理员 加入社区 获取链接或二维码 近7日 近30日 至今 加载中 查看更多榜单 社区公告 暂无公告 试试用AI创作助手写篇文章吧 + 用AI写文章