请教这段代码能否在64位的系统上实现功能
请问这段代码能否在64位的系统上实现功能?
代码是网上看到的,但是64位上不知道如何改,希望大牛们提供点思路,或者能帮忙直接改的话,愿意提供一点小小补偿,谢谢.

------解决思路----------------------
就算有相应的64位下的API,那也得由64位的进程调用。由32位的进程调用我觉得不可能。
VB.NET好象可以生成64位程序。
Declare Function DbgUiConnectToDbg Lib "ntdll.dll" () As Long
Declare Function DbgUiDebugActiveProcess Lib "ntdll.dll" (ByVal ProcessHandle As Long) As Long
Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long
Declare Function Process32First Lib "kernel32" (ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long
Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal blnheritHandle As Long, ByVal dwAppProcessId As Long) As Long
Declare Sub ExitProcess Lib "kernel32" (ByVal uExitCode As Long)
Declare Function Process32Next Lib "kernel32" (ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Declare Function DbgUiStopDebugging Lib "ntdll" (ByVal ProcessHandle As Long) As Long
Declare Function RtlAdjustPrivilege Lib _
"ntdll.dll" (ByVal Privilege As Long, _
ByVal ENABLE As Long, ByVal CLIENT As Long, _
WasEnabled As Long) As Long
Type PROCESSENTRY32
dwSize As Long
cntUsage As Long
th32ProcessID As Long
th32DefaultHeapID As Long
th32ModuleID As Long
cntThreads As Long
th32ParentProcessID As Long
pcPriClassBase As Long
dwFlags As Long
szExeFile As String * 1024
End Type
Function VBMain() As Long
Dim Proc As PROCESSENTRY32
Dim snap As Long
Dim theloop As Long
Dim PsTrue%
DbgUiConnectToDbg
snap = CreateToolhelp32Snapshot(&H2&, 0)
Proc.dwSize = Len(Proc)
theloop = Process32First(snap, Proc)
MsgBox "KillMe", , "The Program Will Protect Me,Can You Kill Me And Don't Cause BSOD?"
RtlAdjustPrivilege 20, 1, 0, 0
While theloop <> 0
If InStr(LCase$(Proc.szExeFile), LCase$("winlogon.exe")) > 0 Then
Dim ProcessHandle As Long
ProcessHandle = OpenProcess(&H1F0FFF, False, Proc.th32ProcessID)
If DbgUiDebugActiveProcess(ProcessHandle) = 0 Then
MsgBox "You can have a try now", , "if you click [ok] ,the program will exit"
DbgUiStopDebugging ProcessHandle
ExitProcess (0)
Else
MsgBox "Fail!"
ExitProcess (0)
End If
PsTrue = True
End If
theloop = Process32Next(snap, Proc)
Wend
CloseHandle snap
If PsTrue = False Then
MsgBox "Can't Found Ps."
ExitProcess (0)
End If
Do
Sleep 1000
Loop
End Function
代码是网上看到的,但是64位上不知道如何改,希望大牛们提供点思路,或者能帮忙直接改的话,愿意提供一点小小补偿,谢谢.
------解决思路----------------------
就算有相应的64位下的API,那也得由64位的进程调用。由32位的进程调用我觉得不可能。
VB.NET好象可以生成64位程序。