检测dll是32/64位 ?

简介: <p>检测dll是32/64位 ?<br></p><p><br></p><p></p><pre code_snippet_id="614744" snippet_file_name="blog_20150309_1_4215500" name="code" class="html">void CCheck32Or64Dlg::OnButton2() { CString fileNam

检测dll是32/64位 ?


void CCheck32Or64Dlg::OnButton2() 
{
	CString fileName = "";
	CFileDialog *fileDialog = new CFileDialog(TRUE,NULL,NULL,OFN_HIDEREADONLY,"Dll Files(*.dll)|*.dll|Exe Files(*.exe)|*.exe||",NULL);
	if(fileDialog->DoModal()==IDOK)
	{
		fileName = fileDialog->GetPathName();
		byte buf[4];
		CFile file(fileName,CFile::modeRead);
		file.Seek(0x40-4,0);
		file.Read(buf,4);
		int a,b,c,d;
		a = int(buf[0]);
		b = int(buf[1])*256;
		c = int(buf[2])*256*256;
		d = int(buf[3])*256*256*256;
		int sum = a+b+c+d;
		file.Seek(sum+4,0);
		byte bufMachine[2];
		file.Read(bufMachine,2);
		int machine = (int)bufMachine[0] + (int)(bufMachine[1])*256;
		if(machine == 0x14C)
		{
			MessageBox(fileDialog->GetFileName()+"是32位PE文件","检测结果");
		}
		else if(machine == 0x8664)
		{
			MessageBox(fileDialog->GetFileName()+"是64位PE文件","检测结果");
		}
		else
		{
			MessageBox("未能识别:"+fileDialog->GetFileName()+"多少位的PE文件!","检测结果");
		}
	}
}


相关文章
|
算法 网络协议
生成树协议:网络稳定的守护者
【4月更文挑战第22天】
351 0
|
消息中间件 存储 监控
消息队列:分布式系统中的重要组件
消息队列:分布式系统中的重要组件
|
10月前
|
人工智能 Python
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
【02】做一个精美的打飞机小游戏,python开发小游戏-鹰击长空—优雅草央千澈-持续更新-分享源代码和游戏包供游玩-记录完整开发过程-用做好的素材来完善鹰击长空1.0.1版本
422 7
|
存储 监控 关系型数据库
关系型数据库mysql的BLACKHOLE
【6月更文挑战第18天】
400 4
栈和队列的实现(详解+图解!文末附完整代码)
栈和队列的实现(详解+图解!文末附完整代码)
495 2
|
机器学习/深度学习 人工智能 自然语言处理
Sora是什么?Sora如何使用?带你快速了解OpenAI发布的Sora大模型
OpenAI自2015年成立以来,一直是人工智能领域的佼佼者。他们在深度学习和自然语言处理等多个方面取得了显著进展,GPT-4的推出更是巩固了他们在技术创新和应用开发上的领导地位。OpenAI的目标不仅仅是技术突破,更重要的是推动AI技术的安全和伦理发展,以造福人类社会。
Sora是什么?Sora如何使用?带你快速了解OpenAI发布的Sora大模型
|
存储 监控 安全
LIS系统-实现检验报告集中管理
LIS系统-实现检验报告集中管理
444 0
|
负载均衡 算法 Dubbo
Spring Cloud面试题
如果 firstPage method() 中的异常继续发生,则 Hystrix 电路将中断,并且员工使用者将一起跳过 firtsPage 方法,并直接调用回退方法。 断路器的目的是给第一页方法或第一页方法可能调用的其他方法留出时间,并导致异常恢复。可能发生的情况是,在负载较小的情况下,导致异常的问题有更好的恢复机会 。
Spring Cloud面试题
|
JavaScript 前端开发 数据库
【Vue】实现出生日期计算年龄
【Vue】实现出生日期计算年龄
703 0
【Vue】实现出生日期计算年龄
|
负载均衡 网络协议 算法
TCP性能优化实战
本次和大家聊一下TCP性能优化。