PLM之家PLMHome-工业软件践行者

[原创] C/C++判断dll是多少位的

[复制链接]

2016-12-11 15:54:03 2864 0

8

主题

10

回帖

146

积分

注册会员

积分
146
QQ
发表于 2016-12-11 15:54:03 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
C/C++判断dll是多少位的
7 j" \" u1 q, Y6 U# H' X
' L! s  ~9 v- E5 [7 q+ D4 X( ^#include <stdio.h>. T0 ]7 v+ b5 G) t; }
#include <windows.h>0 m9 S7 K% |: N* l) O
; S( V, [& g, z+ V0 \! [
6 c5 \( l0 [- G4 @! Y
int __stdcall CrnGetImageFileMachine(LPCSTR lpFileName)2 c3 ]1 a' b6 m/ ?( e# y& I" D9 P$ Z
+ y. }9 H+ U9 l# n6 R. Y
{: N2 O6 O& q0 I# O

# S  [; d1 |4 K- A9 n    IMAGE_DOS_HEADER idh;
$ K: a0 s7 Y' V' B& J% q
2 Q4 h" S( [$ O# e, C% f    FILE *f = fopen(lpFileName, "rb");2 c0 r* a* W) a0 j2 a

# q% a" d) b# o5 Q/ H' F    fread(&idh, sizeof(idh), 1, f);
& y1 h; N# L+ m+ R* d) E7 X! l9 t7 D5 e( j+ ?& R& o2 q0 C% C

1 Y3 E  v0 w6 T+ j4 l, k    IMAGE_FILE_HEADER ifh;/ }( u& k# z8 c, t/ ]
3 T* ^! B: Z/ {2 j- _' o$ _" N
    fseek(f, idh.e_lfanew + 4, SEEK_SET);' Z/ v/ \9 \9 l

( x9 A6 |; j5 S7 C$ K! Q    fread(&ifh, sizeof(ifh), 1, f);6 x/ K+ ]5 m" p9 [3 x+ Q

, o$ ]7 f( a; U& u5 a- \, J/ i5 I" t) C/ c+ H- k  B
    fclose(f);
1 @9 T5 u3 l. \: o4 ?7 k6 f  Z! Z; ^3 i/ p" o9 k
1 ]9 E/ }+ B. J9 `& N
    return ifh.Machine;  f: u7 c8 {9 F: W/ ]
" ~' o; p# U6 k* f/ M  J, U' `: M
}. D8 l  ~- a0 B$ C' {* f  c) J# `2 r

2 ]& |3 c( h3 t9 ]" o3 `9 \( m8 S5 _$ J

! t" h9 _& z/ W0 |& ]* o) V$ T: b- c
// C/C++判断dll是多少位的% b) `( L8 l( ]( f3 D5 Y
( D2 O' I9 _( u7 }
    int n = CrnGetImageFileMachine("E:\\temp\\setup.exe");* Y0 \, a$ d$ d# P6 {
. Y0 j, ~; F) Q# y4 a
    if (n == 0x014C) ShowMessage("x86");
8 p: m3 T1 |. N  r6 N5 N/ v    else if (n == 0x0200) ShowMessage("IA64");
+ C6 Y& X% o3 e) L5 K% b    else if (n == 0x8664) ShowMessage("x64");
& C: p. a: Y/ f4 I/ _) G2 T* e: F    else ShowMessage("抱歉检测不出来");" M0 \4 f6 h, ?) v7 z5 U, A
; d' k, N( b# {7 V- m! L
  f$ v$ ]$ c/ l9 y: n
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了