|
上次我曾公布过一个WinXP的电话激活补丁,但那个补丁只是我没完成的作品,在这儿我向以前下载了那个补丁的哥们道歉。' `* ?$ t* M2 s( F6 x* t) L7 E
现在我潜心修炼,做出了2.0版的补丁,在这儿公布。
- u8 R& ~! Z6 G) E' s" v7 `; h
$ d& K9 E, E2 x( M! ]" a# I6 b g 在这儿公布部分源代码:
7 a8 T+ h' |" Y" }4 G9 j0 S Private Declare Function MoveFileEx Lib "kernel32" Alias "MoveFileExA" _
7 N$ t' { {# J u5 I9 M! w5 l* z (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, _
0 Q+ e4 R( q& ^- { l- j1 i9 D ByVal dwFlags As Long) As Long
! G' B! _/ ?. J. Z( [ 上面的那个API函数是用来将一个系统文件移到另一个地方以副本形式运行,因为运行中的系统文件是不能被直接修改的。4 T5 B1 {5 F* X2 Z1 ?
! k: g$ d& ]% R8 ^3 W- X Dim SysDir As String
3 F- a5 S! q# h( r2 B Dim WinDir As String
5 ]5 ~. ~# u: z: h5 k - p7 X1 I1 a; R7 F7 ^- ]
Dim SysObj As SWbemObjectSet
- }: F& t+ X5 `- `% x Dim sys As SWbemObject
; m8 T" I/ Q7 `# k2 a. D; Q$ B, p1 M
7 L" T: I0 I% u9 F$ Y Set SysObj = GetObject("winmgmts:{impersonationLevel=impersonate}") _# {: v, c- h4 ]4 u' n9 G
.InstancesOf("Win32_OperatingSystem")' L: [' g' Q& W& h) n4 V$ q- X2 ]
For Each sys In SysObj1 z$ R' n9 ^. O! S
SysDir = sys.systemdirectory
$ g9 q5 z& s6 ]8 s0 _. U- y0 W WinDir = sys.windowsdirectory6 n; r8 { k/ l+ u
Next
5 ~% a6 v8 h: v& B. c3 c& J' Q 上面一段是获得系统目录,和安装目录。% s! m0 t& ~2 T
Shell SysDir & "\wbem\wmiprvse.exe"2 u# Z# }6 t0 w6 T
Shell SysDir & "\msdtc.exe"
4 @3 G# v n0 { 上边的两个程序作用于系统的保护功能啊。我可是找了好几天才找到的,要不然,程序运行后,不一会儿就被复原了。本来用sfc,但发现根本不行,现在用了这个就可以了。' ]8 Y5 V7 X( v. X7 \* I
0 B% v: D0 v& A X; O% x0 [编译好的程序在煎饼的FTP里有,在Ecupload里的。 . O7 a9 [- w/ n2 V9 M# J( [
|
|