|
上次我曾公布过一个WinXP的电话激活补丁,但那个补丁只是我没完成的作品,在这儿我向以前下载了那个补丁的哥们道歉。
* b* y; d/ Q% v$ Z& m! w$ s" W- z 现在我潜心修炼,做出了2.0版的补丁,在这儿公布。
0 [9 u0 s% Y0 Z9 G4 W' D- d! P
7 c( w* P! a+ M! D2 @4 d% Z 在这儿公布部分源代码:4 _2 u' r& U p0 e5 _5 q% {4 y8 n3 ~
Private Declare Function MoveFileEx Lib "kernel32" Alias "MoveFileExA" _
2 f5 u7 M6 \: e: v4 u! l/ O, M (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, _& t, `5 z+ y- C, R
ByVal dwFlags As Long) As Long; I9 c& U! K1 h$ Q- B# M4 s
上面的那个API函数是用来将一个系统文件移到另一个地方以副本形式运行,因为运行中的系统文件是不能被直接修改的。8 B& l, l$ Z; n0 H
; j- R' i4 ]5 s- @2 H# l3 A: x Dim SysDir As String
* I6 l! M$ h& K& ]! C1 P3 J8 }4 y Dim WinDir As String
' t |0 R5 C$ W6 s; T: Z( ]2 Z f$ |+ c. u7 ^) X6 } x
Dim SysObj As SWbemObjectSet2 `/ M) m+ ^ l4 J) h0 o: x& E+ Z+ }! p
Dim sys As SWbemObject
; @6 G- |" _- h* s1 M7 w; K
8 S' j6 ^. [% F: E8 O Set SysObj = GetObject("winmgmts:{impersonationLevel=impersonate}") _% v P/ |# B; n' E/ J0 S
.InstancesOf("Win32_OperatingSystem")5 X. X! K2 O% k
For Each sys In SysObj: \& g+ D0 b- i3 ?8 J9 o) m1 e
SysDir = sys.systemdirectory$ g: h& t6 n5 ?% D: M$ y% M
WinDir = sys.windowsdirectory$ x9 }; Q: @2 x/ b
Next
$ e4 i, P2 \# z 上面一段是获得系统目录,和安装目录。1 N7 z3 p. _1 x% d0 w9 l' b3 b" S- f1 ?
Shell SysDir & "\wbem\wmiprvse.exe") W& Y1 l' i# ^/ I) K/ o5 i$ ~ ~
Shell SysDir & "\msdtc.exe"* D/ o7 \; W: z! W; b! e
上边的两个程序作用于系统的保护功能啊。我可是找了好几天才找到的,要不然,程序运行后,不一会儿就被复原了。本来用sfc,但发现根本不行,现在用了这个就可以了。6 t; F9 S0 }8 N- G o* [" B( y
% C2 Q) R2 b6 d6 F4 J& g: i编译好的程序在煎饼的FTP里有,在Ecupload里的。
# { L) U' X* X( G9 L( E) h |
|