|
ULONG CR0VALUE;
( @2 Q" G0 E K3 I. Q3 |- ?: J$ l//只读
! x/ N k, k, Z" A __asm{9 J& ?2 }6 |( a( f l# k% H9 ?
push eax;* q) }4 I# F) B" ^" h2 d
mov eax, cr0; 6 J: n2 }' b. d0 E$ E. i( n: ]
mov CR0VALUE, eax; 6 _6 X# H% B& N ^; ^; c
and eax, 0fffeffffh;
) y# K" X: r! p mov cr0, eax;9 i! L; H' U! O6 v
pop eax;/ m% Q6 o# C/ b% b2 M3 K6 \2 m
};
- y; E3 G, R2 G+ j5 i6 ?5 x / \" i. ]' G, q0 {6 h# n6 I7 m1 Y* S
//取消只读
( T2 b# i' v/ x __asm{
$ l3 W% z( P7 c! \6 ^ push eax;
4 i! b7 i* l, a' K; c9 _; @" b3 i& T mov eax, CR0VALUE; : B5 s! O7 S; m
mov cr0, eax ;
* o) D0 \- p, q pop eax;* g* A) r" C' e) Y; o' {% ~
};
% [5 D* ]; k$ h; C0 j
+ ?) V9 L* z, f0 v以上是一段C里面调用的汇编的程序,但是这段程序只可以在32位的OS下使用,不可以在64位的OS下使用,请哪位大哥帮忙代码转给64位上可以使用的代码。谢谢! |
|