久久综合伊人噜噜色,日本三级香港三级人妇电影精品,亚洲中文色资源,国产高清一区二区三区人妖

    1. <sub id="9pxky"></sub>
    2. <small id="9pxky"></small>

          汶上信息港

          標(biāo)題: 完全用VB進(jìn)行ASM編程的示例 [打印本頁]

          作者: hbhdgpyz    時(shí)間: 2008-9-28 16:21
          標(biāo)題: 完全用VB進(jìn)行ASM編程的示例
          <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面的例子完全用</SPAN><SPAN lang=EN-US>VB</SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">進(jìn)行</SPAN><SPAN lang=EN-US>ASM</SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">編程的示例,本例獲得</SPAN><SPAN lang=EN-US>CPU ID.</SPAN></P>
          + e1 D5 g3 t4 [7 L) T; t: t+ Q<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>- f% j+ d* |: A4 ~0 `
          <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工程文件分為一個(gè)</SPAN><SPAN lang=EN-US>form1.frm </SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和一個(gè)模塊</SPAN><SPAN lang=EN-US>module1.bas</SPAN></P>2 b# l: a9 F0 m- X0 \1 k1 @
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          8 A, u* z$ e; ~& |  u<P class=MsoNormal><SPAN lang=EN-US>----------------------form1.frm</SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的源文件</SPAN><SPAN lang=EN-US>---------------------</SPAN></P>
          - _, p/ ?. D, u9 J' M<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          8 r" g- O$ M+ S5 O+ A5 `% x) t( v/ a<P class=MsoNormal><SPAN lang=EN-US>VERSION 5.00</SPAN></P>( j$ l5 ]. G; |) H1 F* T* Y
          <P class=MsoNormal><SPAN lang=EN-US>Begin VB.form form1 </SPAN></P>
          " V) z+ v5 d& E<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Caption<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>"form1"</SPAN></P>0 W, l5 \9 G. W3 w2 Z2 M. n& t
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ClientHeight<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1965</SPAN></P>
          6 @( X. @+ ~& q5 j<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ClientLeft<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>60</SPAN></P>7 B: H- z% F& ^1 C7 O2 B8 J
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ClientTop<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>345</SPAN></P>
          + }: a! @0 T! F! U<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ClientWidth<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>3105</SPAN></P>
          ( G5 ~3 q- x" r9 I1 R5 P<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>LinkTopic<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>"form1"</SPAN></P>  J0 ~- W" ^7 S0 \7 _
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ScaleHeight<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1965</SPAN></P>( J6 R9 U+ M% W, K4 c2 y' Y' ^0 b" i2 O
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>ScaleWidth<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>3105</SPAN></P>
          8 I2 c' {0 @; s+ Z<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>StartUpPosition =<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>2<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>'Bildschirmmitte</SPAN></P>  ^& S  e4 C5 `& ~4 D
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Begin VB.CommandButton Command1 </SPAN></P># l9 F% O1 f  v- m* k9 Z
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Caption<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>"Get CPU Name"</SPAN></P>
          & T6 w" Y4 l( O# o6 u1 Q<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Height<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>495</SPAN></P>
          & }0 q6 l/ ^- a% ^<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Left<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>840</SPAN></P>) p3 K% _; r& N  o) l7 U; h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>TabIndex<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0</SPAN></P>3 S. o6 D0 l2 w0 U/ X
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Top<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>315</SPAN></P>+ O9 F7 {0 @/ V: X  a& d
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Width<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1425</SPAN></P>
          ) [- y1 k% l) T+ X& r! u<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End</SPAN></P>" f+ U2 R) \1 I7 ]
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Begin VB.Label Label2 </SPAN></P>+ Z! u* C3 n& {5 u
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Alignment<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>2<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>'Zentriert</SPAN></P>* W- C- `. s" G  \, G* ~8 g# K
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>AutoSize<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>-1<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>'True</SPAN></P>
          3 H6 G) r' Q& j* q<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>BeginProperty Font </SPAN></P>' d+ `& f1 i$ N& ^# L) ^8 W
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Name<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>"MS Sans Serif"</SPAN></P>3 Z7 g' ?& a8 @: G  p" P) D9 j/ |
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Size<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>9.75</SPAN></P>
          0 L6 y) c* ?6 b4 ~! d" r5 U<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Charset<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0</SPAN></P>
          # E& I+ \' F+ A/ }& f- s; e; D<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Weight<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>400</SPAN></P>
          # o# M" f6 ?5 i) b$ \% p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Underline<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>
          ) s# V" I  m1 A: z: B! E<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Italic<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>- h/ t5 n* ?7 t; W$ }6 H5 h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Strikethrough<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>
          ; D& v$ N! X, a3 S9 @2 E<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>EndProperty</SPAN></P>
          # ^7 {: `) C# N' S) a- M<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Height<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>240</SPAN></P>
          + S# S- k: _6 m! e+ s, E( T. K/ ?<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Left<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1515</SPAN></P>
          9 E# ], j- D" T+ X<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>TabIndex<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>2</SPAN></P>
          : T9 {5 J  A+ \$ S+ A1 }% s<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Top<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1065</SPAN></P>, w9 E! R6 W3 _2 f, f& d: G
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Width<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;</SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>60</SPAN></P>
          ) z4 r0 h) j0 ~5 ]9 o* @<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End</SPAN></P>
          ; f& ], G$ y+ v6 i<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Begin VB.Label Label1 </SPAN></P>
          , c' D! O( v; Z# o9 V; A<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Alignment<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>2<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>'Zentriert</SPAN></P>+ t9 C7 F/ Z' b, e  u# }5 ]' C
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>AutoSize<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>-1<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>'True</SPAN></P>
          ; C8 R+ J* _1 |6 Y<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>BeginProperty Font </SPAN></P>
          ! a9 W, Y6 j$ E7 u8 M) l% C, J' O& h<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Name<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>"Arial"</SPAN></P>
          2 H- r; u* T, o" Y8 |; e4 m<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Size<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>12</SPAN></P>/ \  q* @1 l( x
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Charset<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0</SPAN></P>  w) q; x: _( h% D  g
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Weight<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>700</SPAN></P>
          ; f$ w/ ?9 ~4 g<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Underline<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>
          % g6 k( V* G* I  ], Y1 U7 w<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Italic<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>
          * |& k: @2 {# x6 z7 }5 p& \<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Strikethrough<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>0<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'False</SPAN></P>6 u! b- {% H% o, U
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>EndProperty</SPAN></P>9 d8 r) J0 D* S& ^/ F+ `# C2 n
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Height<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>285</SPAN></P>) Q. Y: ~& h7 z1 ^2 J7 y
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Left<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1515</SPAN></P>! z% L6 ^! n* I# {6 B
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>TabIndex<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>1</SPAN></P>9 T2 ^  z% M4 e1 e  f" c
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Top<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>= <SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN>1350</SPAN></P>
          / {) Z, m, G# E# [; p! E<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>Width<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>=<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>75</SPAN></P>  _" ?. b9 p/ a8 d
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN>End</SPAN></P>  S) R0 R% r# T. w( S. S) v
          <P class=MsoNormal><SPAN lang=EN-US>End</SPAN></P>
          , `; E7 H7 x! V) q0 o2 Z<P class=MsoNormal><SPAN lang=EN-US>Attribute VB_Name = "form1"</SPAN></P>
          $ O  Y2 `' g- n5 N/ |<P class=MsoNormal><SPAN lang=EN-US>Attribute VB_GlobalNameSpace = False</SPAN></P>
          , j3 t$ }2 @1 K1 ^9 C) `<P class=MsoNormal><SPAN lang=EN-US>Attribute VB_Creatable = False</SPAN></P>: P  C4 [+ o8 M1 ?: G& ?
          <P class=MsoNormal><SPAN lang=EN-US>Attribute VB_PredeclaredId = True</SPAN></P>
          ; R3 `( C* }* w2 p7 {1 o<P class=MsoNormal><SPAN lang=EN-US>Attribute VB_Exposed = False</SPAN></P>
            }! u: j3 l0 P! h- f2 c6 o<P class=MsoNormal><SPAN lang=EN-US>Option Explicit</SPAN></P>, S4 R% I( ?) r" o, L# j. t
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          4 z8 P# T8 W8 L4 O  |9 `<P class=MsoNormal><SPAN lang=EN-US>Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, x As Single, Y As Single)</SPAN></P>' p& `) N) K$ U' ]$ n1 T4 o! z
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>5 P" B, K, s8 B8 n
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Label1 = ""</SPAN></P>6 f0 U) i2 ]5 S& U5 \7 w  }: A( ~
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Label2 = ""</SPAN></P>
          & q& e1 @+ b$ X! H* d- ~( a3 l2 w4 U. m<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          : B  I6 u: r2 `<P class=MsoNormal><SPAN lang=EN-US>End Sub</SPAN></P>+ R6 b% ]& f% z% D
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>! p" K. x- N7 W- z5 f( U3 m
          <P class=MsoNormal><SPAN lang=EN-US>Private Sub Command1_Click()</SPAN></P>9 u- l/ s+ A! w) S1 I
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>  y! w$ w& k* B1 C5 k3 D7 ]3 \* X
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Label1 = GetCpuName() &amp; " CPU"</SPAN></P>" {! M) [9 G; f0 H* K2 r
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>Label2 = "You have a" &amp; IIf(InStr("AEIOU", Left$(Label1, 1)), "n", "")</SPAN></P>. R& W& I/ @# j& v9 z+ A3 m5 M
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>! n$ |7 g5 k5 M/ m
          <P class=MsoNormal><SPAN lang=EN-US>End Sub</SPAN></P>6 y$ g* ~4 n, G) C# p; V4 {# ?
          <P class=MsoNormal><SPAN lang=EN-US>------------------------------end---------------------------------</SPAN></P>" X8 m3 D1 `+ J$ C! J/ ]
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>: y( m. Y9 @' z5 V  ]! p( \
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          + c1 w% h' C3 K' V6 Q<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>( |) K5 V- p3 R. t* n# `
          <P class=MsoNormal><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面是</SPAN><SPAN lang=EN-US>modu1e.bas</SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的源代碼</SPAN></P>
          - j6 V: R9 {& G3 r<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          $ X# }& H8 s. K. z( |<P class=MsoNormal><SPAN lang=EN-US>----------------------module1.bas</SPAN><SPAN style="FONT-FAMILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的源文件</SPAN><SPAN lang=EN-US>--------------------------</SPAN></P>. ?8 v) T1 d: v/ X4 l: Q
          <P class=MsoNormal><SPAN lang=EN-US>Option Explicit</SPAN></P>
          , O7 Q* |/ u  E  E+ F* A7 [+ m1 n& I<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>
          ! d9 [4 g2 v: `<P class=MsoNormal><SPAN lang=EN-US>'This shows how to incorporate machine code into VB</SPAN></P>) u* p4 a5 y& O3 D) Q0 n2 j+ n
          <P class=MsoNormal><SPAN lang=EN-US>'''''''''''''''''''''''''''''''''''''''''''''''''''</SPAN></P>: U! ]( y8 c/ d+ `  D
          <P class=MsoNormal><SPAN lang=EN-US>'The example fills the array with a few machine instructions and then copies</SPAN></P>
          , ?+ o0 j6 a! p/ y<P class=MsoNormal><SPAN lang=EN-US>'them to a procedure address. The modified procedure is then called thru</SPAN></P>
          7 F8 P0 P# r, O<P class=MsoNormal><SPAN lang=EN-US>'CallWindowProc. The result of this specific machine code is your CPU Vendor Name.</SPAN></P>
          : Q9 @0 P5 r; o- F<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>
          / ?; E& \0 c4 w6 ^- g; f<P class=MsoNormal><SPAN lang=EN-US>'##########################################################################</SPAN></P>2 x6 q4 G# N/ a) V- M& H
          <P class=MsoNormal><SPAN lang=EN-US>'Apparently it gets a Stack Pointer Error, but I don't know why; if anybody</SPAN></P>
          0 U' n, j' P2 i: @- s% l: y<P class=MsoNormal><SPAN lang=EN-US>'can fix that please let me know...<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>UMGEDV@AOL.COM</SPAN></P>; r7 K' H$ d. v  Q" d& x& P
          <P class=MsoNormal><SPAN lang=EN-US>'The Error is not present in the native compiled version; so I think it got</SPAN></P>
          $ Y4 `, i6 B& m( a<P class=MsoNormal><SPAN lang=EN-US>'something to do with the P-Code Calling Convention (strange though)...</SPAN></P>1 I3 P& h3 t' x' u- A9 p. b% \4 K
          <P class=MsoNormal><SPAN lang=EN-US>'##########################################################################</SPAN></P>. I% _" [4 G, Y0 P2 F, o& @4 H
          <P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>. r" x% }2 ]2 ]' M; n  o. D
          <P class=MsoNormal><SPAN lang=EN-US>'Sub Dummy serves to reserve some space to copy the machine instructions into.</SPAN></P>
          / y% [- W' L* ~" k8 J# C% P) @<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>
          $ W6 m; }) E9 ]4 M! D1 x<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>  e- p& A! ]2 U- |* d2 U
          <P class=MsoNormal><SPAN lang=EN-US>'Tested on Intel and AMD CPU's (uncompiled and compiled)</SPAN></P>
          $ |. _, O' t2 s( n<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>
          1 @  m5 a2 ]6 O  r5 {7 S& J<P class=MsoNormal><SPAN lang=EN-US>'</SPAN></P>& d1 V. [6 l2 C# T8 I
          <P class=MsoNormal><SPAN lang=EN-US>Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long</SPAN></P>* W5 I3 G/ e) J7 [
          <P class=MsoNormal><SPAN lang=EN-US>Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (lpvDest As Any, lpvSource As Any, ByVal cbCopy As Long)</SPAN></P>  N! H% h) i" U! ?) k8 L
          <P class=MsoNormal><SPAN lang=EN-US>Private x As Long</SPAN></P>
          # f1 B: z, s, j9 Z<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>: y7 C8 ^0 b6 ^+ y; \; B0 Q1 B
          <P class=MsoNormal><SPAN lang=EN-US>Public Function GetCpuName() As String</SPAN></P>( f- ~! N  r) z$ m
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>" |) m0 X1 N$ b0 ?& T
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim MachineCode(0 To 35)<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>As Byte</SPAN></P>4 X: z0 y/ c7 g* e$ I: w8 h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim VarAddr<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>As Long</SPAN></P>
          1 c( m, O$ ~4 F1 n<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim FunctAddr<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>As Long</SPAN></P>! |# W% s" N! |  V& g/ D7 a6 C4 Q
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim EAX<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>As Long</SPAN></P>
          3 \# O9 ^3 v# K, y; i2 e) d<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>Dim CPUName(1 To 12)<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>As Byte</SPAN></P>
          : Z8 i1 H# H! V" N<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>% {8 O' M% e  M' h. J/ g
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>'set up machine code</SPAN></P>5 ]6 P% M2 Z7 ]
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>" \) Q2 c3 \3 V1 U! e3 N
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(0) = &amp;H55<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'push ebp</SPAN></P>) m, k, o8 i7 J& a
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>% v# l( F$ C! t' c0 Q7 s
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(1) = &amp;H8B<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'move ebp,esp</SPAN></P>; G% F. f' a7 h3 @( @# s+ U6 W  [: @
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(2) = &amp;HEC</SPAN></P>
          8 a) H( N( A: q/ p3 x5 ^9 F% [( d<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          " e. K; O9 K' F# B<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(3) = &amp;H57<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'push edi</SPAN></P>
          ' @9 L; _5 F7 Z" X5 V<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>- v/ Q  ?4 j# }  V( x
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(4) = &amp;H52<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'push edx</SPAN></P>% u) ^+ K$ @7 ^; B$ j! L6 D( h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          # ?# Q+ g+ F- |* Y<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(5) = &amp;H51<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'push ecx</SPAN></P>
          ' q* ^1 a1 g- P% F<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          " r. m/ U6 L) V0 t+ n: I<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(6) = &amp;H53<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'push ebx</SPAN></P>
          - W. ?3 T; b* t9 x; H" w0 `<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>3 I% H" k, P1 ^. e) T
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(7) = &amp;H8B<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'move eax,dword ptr [ebp+8]</SPAN></P>+ g4 G/ f3 B4 `* G% S7 l
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(8) = &amp;H45</SPAN></P>( h9 F% `' z' `3 i2 N  h) i
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(9) = &amp;H8</SPAN></P>
          % W+ p$ I' {! i1 i<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>' E" n. Y8 i) ~5 A* c
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(10) = &amp;HF<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </SPAN>'cpuid</SPAN></P>
          9 N* N" ?$ ^+ i6 W( L) x- ~: @; w<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(11) = &amp;HA2</SPAN></P>
          - K6 d0 L- p7 Z+ D  }, l/ B) r<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>6 W  v  r0 ]$ w
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(12) = &amp;H8B<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'mov edi,dword ptr [ebp+12]</SPAN></P>
          1 e$ c. U% B& M, c. ?3 Q3 I: o( p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(13) = &amp;H7D</SPAN></P>
          7 F2 U2 L0 X3 x/ [<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(14) = &amp;HC</SPAN></P>+ n, u# f" c) G/ V
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          . S7 b" |! a: ]! M1 x2 D: H$ U+ T3 T<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(15) = &amp;H89<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'move dword ptr [edi],ebx</SPAN></P>* P$ @4 g& p/ n5 W
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(16) = &amp;H1F</SPAN></P>, v" b- w% N2 a, G
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          7 r; z% u# Y$ v<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(17) = &amp;H8B<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'mov edi,dword ptr [ebp+16]</SPAN></P>! N  X0 x' D! k( J9 e
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(18) = &amp;H7D</SPAN></P>
          1 N3 q+ F' d1 H, |<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(19) = &amp;H10</SPAN></P>: N+ N: P7 D9 M6 J' E# c' ~
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>$ t* Z* P& _8 v7 _; ?7 U
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(20) = &amp;H89<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'move dword ptr [edi],ecx</SPAN></P>0 {" V3 i8 [/ _1 O
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(21) = &amp;HF</SPAN></P>
          4 M$ y0 r/ ~& `5 U% T5 Y2 s, {<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>, i4 D0 G& H( O* S% B5 _5 _
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(22) = &amp;H8B<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'mov edi,dword ptr [ebp+20]</SPAN></P>2 }. x/ ^" Z7 l& z" `
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(23) = &amp;H7D</SPAN></P>
          ( X9 Z# v  C5 H% a' c- E1 d<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(24) = &amp;H14</SPAN></P>& v) T  U4 f' j4 m
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>* @/ @  N( ]8 ~# P
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(25) = &amp;H89<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'move dword ptr [edi],edx</SPAN></P>
          3 N7 N# ?# j, w; O: e5 }# n$ p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(26) = &amp;H17</SPAN></P>
          1 [3 c! }! f  r" m1 r<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          * L' W  j3 n& ^1 Z% s- c1 g<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(27) = &amp;H58<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'pop ebx</SPAN></P>
          4 C7 C# m( b' g- j* s  {4 u' r<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>1 W  F! c' Z( U! _# K/ U  \) o
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(28) = &amp;H59<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'pop ecx</SPAN></P>& {; k* A% |) G5 U
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>) X  C1 L# I% f9 N0 u: \
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(29) = &amp;H5A<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'pop edx</SPAN></P>1 o# d+ }( v  ]8 H/ w. q
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          % F: s1 B% D  E* z: F+ k. t5 p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(30) = &amp;H55<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'pop edi</SPAN></P>
          / R+ t6 b, H% n  d1 e" K<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>1 @" ^& x7 {' a2 B9 E/ G
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(31) = &amp;HC9<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'leave</SPAN></P>
          8 w, e: J2 w* b2 N7 |$ r7 K<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>, f( h, e$ V" y# O  l. m6 z. V
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(32) = &amp;HC2<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'ret 16<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>I tried everything from 0 to 24</SPAN></P>
          1 a' F8 p7 W/ l6 `9 Q<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(33) = &amp;H10<SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'<SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>but all produce the stack error</SPAN></P>
          & s& k$ ?  e: c% o. f3 Y<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>MachineCode(34) = &amp;H0</SPAN></P>
          ) e7 b1 t8 R( l6 P<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>) r! d, ]  C5 H& h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'tell cpuid what we want</SPAN></P>
          ; h7 z& y8 E1 r& ^# I( a; V/ m" p- ]+ i<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>EAX = 0</SPAN></P>
          " a( P4 B- m+ v6 N<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          1 _/ z# S! H  \5 x6 h<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'get address of Machine Code</SPAN></P>
          ; ~3 h2 }& i1 p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>VarAddr = VarPtr(MachineCode(0))</SPAN></P>
          4 y) h/ H% S6 J- o4 g2 A+ r<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>- b# g6 f4 Y; _( @
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'get address of Sub Dummy</SPAN></P>
          % S  e6 {; x0 P- M<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>FunctAddr = GetAddress(AddressOf Dummy)</SPAN></P>; u8 u  D9 H) e
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          5 S% \; l7 |3 g: \<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'copy the Machine Code to where it can be called</SPAN></P>
          / Y1 N& G4 ^+ C' x: _% |+ J3 P. |<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>CopyMemory ByVal FunctAddr, ByVal VarAddr, 35 '35 bytes machine code</SPAN></P>: K! p8 Y& i5 t+ K0 i
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>
          * L0 y: n( G. F3 i<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>'call it</SPAN></P># `; r- V: Q) K/ J  n- z3 c
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>On Error Resume Next 'apparently it gets a stack pointer error when in P-Code but i dont know why</SPAN></P>% y0 Q1 r  {2 p: _5 c
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>CallWindowProc FunctAddr, EAX, VarPtr(CPUName(1)), VarPtr(CPUName(9)), VarPtr(CPUName(5))</SPAN></P>
          * |0 i( w& S0 B8 w3 G<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>'Debug.Print Err; Err.Description</SPAN></P>3 }0 {+ ]5 ~0 h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>'MsgBox Err &amp; Err.Description</SPAN></P>
          $ ]) q  O# C2 q6 ?<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>On Error GoTo 0</SPAN></P>4 \( `) A1 |! m; T# B
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>2 s' L/ L& H( J
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>GetCpuName = StrConv(CPUName(), vbUnicode) 'UnicodeName</SPAN></P>. e# r8 [6 v+ W$ r+ C. p9 l
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN></SPAN></P>' D7 ^; ^7 V7 E
          <P class=MsoNormal><SPAN lang=EN-US>End Function</SPAN></P>
          ; L4 E4 T+ }+ J8 O; J7 |# E<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          , ~" |; d0 }7 _4 n5 d& o; _<P class=MsoNormal><SPAN lang=EN-US>Private Function GetAddress(Address As Long) As Long</SPAN></P>, N0 H# B. U( R8 s  U( y6 w
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>% V9 p1 G( p; `% D
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>GetAddress = Address</SPAN></P>7 r. x9 [( t' h0 r; a  G  P; c
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          6 \  a* _: n% U<P class=MsoNormal><SPAN lang=EN-US>End Function</SPAN></P>
          ( y4 F2 Z% y' ~& `$ v" G2 g9 o<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>
          7 z$ b5 b% R3 D. }: b; T<P class=MsoNormal><SPAN lang=EN-US>Private Sub Dummy()</SPAN></P>
            g. P5 \. r+ f2 p<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>: x% W  U5 _) {& h. r7 [/ J
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>'the code below just reserves some space to copy the machine code into</SPAN></P>1 i# n3 N/ l2 C' }" @8 b- X
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>'it is never executed</SPAN></P>1 K% E3 F7 z. \" A9 e# a- n0 x# `
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>! f/ s6 H, l; u2 U/ s- n% b
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 0</SPAN></P>0 g  P3 j8 h7 N* u7 w9 j
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 1</SPAN></P>
          : |7 N5 Y: Z. C! o<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 2</SPAN></P>
          0 }: R8 F+ t8 ^: H. c, ?<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 3</SPAN></P>1 k* y8 J: [6 Z1 {- c3 p) R
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 4</SPAN></P>
          % Q4 A9 U- P. q( h* w<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 5</SPAN></P>
          3 w: z, W2 x. X5 ^8 `# ?<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 6</SPAN></P>
          ( Q3 n0 b5 V: a- z<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 7</SPAN></P>8 v% A5 ]0 w- w6 ~1 |( Z- V
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 8</SPAN></P>/ t, c. H- |: ]+ Y- ^
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 9</SPAN></P>
          0 t- ~9 K) S/ R: Q# O<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 10</SPAN></P>
          ! C0 P3 T7 k# k7 q; F+ L<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 0</SPAN></P>
          % d5 z: z; m/ [+ m4 @<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 1</SPAN></P>% Q5 @' e" v' w9 P5 b4 _1 X" w7 h
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 2</SPAN></P>5 g3 l) Y0 m8 P* }, ], a
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 3</SPAN></P>
          9 V7 i1 e4 U$ c3 @4 {9 S<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 4</SPAN></P>
          7 V; x$ q9 }! T% G; i, u<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 5</SPAN></P>; [* A2 Q! }7 b' H9 X
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 6</SPAN></P>
          - N  r9 l1 C5 h- {<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 7</SPAN></P>6 r! I( a/ Y- V/ N: @! ~
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 8</SPAN></P>% @( c% F+ i3 c4 K: M. H
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 9</SPAN></P>
          ; e& v4 {' r: w  N5 G) k$ K$ ~<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; </SPAN>x = 10</SPAN></P>8 \; B. x; i* z# Q
          <P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN></P>( y7 \! A9 I5 w, f9 V  B" w  b
          <P class=MsoNormal><SPAN lang=EN-US>End Sub</SPAN></P>
          0 X9 j# S6 A; H3 |4 {$ h- S  |<P class=MsoNormal><SPAN lang=EN-US><SPAN style="mso-spacerun: yes"></SPAN></SPAN>&nbsp;</P>




          歡迎光臨 汶上信息港 (http://www.junkejituan.com/) Powered by Discuz! X3.5