用VB攔Ctrl + Alt + Del..(編號:7700)

因之前有人問這個問題
小弟之前所看到的範例似乎都只是"取消" Ctrl + Alt + Del ?
於是小弟做了個實驗,環境 : VB5(no SP) + Me
設計兩個程式,一個攔Del,一個攔"Ctrl + Alt"(我發現似乎一個表單不能同時攔到..?)
一個程式如下 : (錄自cww站中攔Hook範例,修的就是這部份而己,http://sunh.hosp.ncku.edu.tw/~cww/htmapi46.htm)
Public Function MyKBHFunc(ByVal iCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
MyKBHFunc = 0 '訊息要處理
If iCode < 0 Then
MyKBHFunc = CallNextHookEx(hnexthookproc, iCode, wParam, lParam)
  Exit Function
End If
If wParam = 46 Then
Open "c:\c" For Append As #1
  Close #1
End If
Call CallNextHookEx(hnexthookproc, iCode, wParam, lParam)
End Function
另一個程式則是這樣 : (表單上有一個Timer,值為1000)
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 17 Then
Open "c:\a" For Append As #1
  Close #1
End If
If KeyCode = 17 Then
Open "c:\b" For Append As #1
  Close #1
End If
End Sub
Private Sub t1_Timer()
If Dir("c:\a") <> "" And Dir("c:\b") <> "" And Dir("c:\c") <> "" Then
Debug.Print "aasfkjadsdjkasfl;asjf"
  Call KillNow
Else
Call KillNow
End If
End Sub
Sub KillNow()
On Error Resume Next
Kill "c:\a"
Kill "c:\b"
Kill "c:\c"
End Sub
我不知這樣"理論"上是不是行得通,但在"實際上"我run時.第二個程式只要有keydown
就會掛掉!!??..(這個程式..無效..)
不知各位先進是否有更好的方法 ? (我沒有在其他os try..may be its Me 的問題...)
by Peter ^_^