PLM之家PLMHome-国产软件践行者

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

[复制链接]

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

15757753770 发表于 2016-12-11 15:54:03 |阅读模式

15757753770 楼主

2016-12-11 15:54:03

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

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

x
C/C++判断dll是多少位的/ Q+ m* m; d8 x; y: o8 @, O
" q9 {# ]+ O  \6 |2 h7 D$ Y! r
#include <stdio.h>
0 S! G' A9 c6 e8 A  c$ G6 q4 g7 V* P#include <windows.h>
6 C' m6 F# Y7 v/ |, U2 f. j# b* r& K

; D7 X9 d* W; s8 A1 Y2 ^# Sint __stdcall CrnGetImageFileMachine(LPCSTR lpFileName)9 d- n/ F/ u5 ~" b& C- U

* B8 d* ~  _, P* r! q{
; A7 I! h! _& Z3 @/ M; {* a" i; R, O1 z1 e1 a
    IMAGE_DOS_HEADER idh;
( u8 T  [# B, r) c9 B% q, c8 i+ q( Q$ d( b
    FILE *f = fopen(lpFileName, "rb");
5 _: ^" N" G- H% I& A: K  `
+ o7 Q9 a- W" ^! k- K- g0 a4 J    fread(&idh, sizeof(idh), 1, f);
$ f, T8 j, P; Y8 ?9 m  K! L+ _0 m4 v! o1 j  B: j$ \. o
, E2 v3 `) S3 N! h1 L6 d$ w8 \8 h: m1 [
    IMAGE_FILE_HEADER ifh;1 m! e3 w4 i: ~- R1 I9 I# q

1 C- X/ z3 t5 P; Z) S    fseek(f, idh.e_lfanew + 4, SEEK_SET);% O0 ~' L% n! m( \5 w3 N1 V
  m/ Q# K1 O$ e8 i* H5 N" Y  x
    fread(&ifh, sizeof(ifh), 1, f);
) J# X" R) u9 N6 `" k+ k4 o1 N3 M' b( P( X
( u5 m" N7 k( _+ L. T5 Q
    fclose(f);
( c2 [  t8 g5 v3 Q2 ?  w1 f/ I, p, D. S- R8 `( q  p: h! t

) _& t3 l0 R; y/ A* Y9 n    return ifh.Machine;& O; S0 q, V& Q8 L( v. U
- Y# [6 z" e6 L7 K/ M  l
}! C$ b* z8 H9 _7 p4 M/ M% Q

& B1 I4 l) [, r3 Z5 t# C" ?9 a- e  Z8 m, G6 o

9 N& L3 W  x$ U* n! i# p  t' r/ F' f2 A- Q4 m( t3 T. e
// C/C++判断dll是多少位的: P6 q4 m: `. Z1 q; G" U

2 s$ z" Z0 g( ?; N    int n = CrnGetImageFileMachine("E:\\temp\\setup.exe");+ a6 c6 c9 b2 w; ?  X6 P; h8 m
/ ?  C. f# G2 ^
    if (n == 0x014C) ShowMessage("x86");. T- c( Y  O! x6 r* D! B) d$ B" P  Y
    else if (n == 0x0200) ShowMessage("IA64");7 v- ^& J+ W  p) ]
    else if (n == 0x8664) ShowMessage("x64");
! a! B0 M5 I4 m2 B    else ShowMessage("抱歉检测不出来");
+ [, n+ U' Z9 Y0 |
) O) |3 O$ D+ L9 D  |0 W/ E
, |2 r  U* V% N3 l! D
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了