Haupts�chlich
f�r Programme, die im Hintergrund laufen sollen,
ist es sinnvoll, das Beenden �ber die Taskliste (Ctrl+Alt+Entf)
zu verhindern !
Es ist m�glich, dass
Ihr Programm erst gar nicht in
der Liste erscheint !
|
ERFORDERLICHE
OBJEKTE:
2 Commandbuttons (Command1, Command2)
FORM-CODE
Private Declare Function GetCurrentProcessId _
�� Lib "kernel32" () As Long
Private Declare Function GetCurrentProcess _
�� Lib "kernel32" () As Long
Private Declare Function RegisterServiceProcess _
�� Lib "kernel32" (ByVal dwProcessID As Long, _
�� ByVal dwType As Long) As Long
Sub Sichtbar_in_TaskListe(JaNein)
�� Dim p As Long
�� Dim ret As Long
�� If JaNein Then x = 0 Else x = 1
�� p = GetCurrentProcessId()
�� regserv = RegisterServiceProcess(pid, x)
End Sub
Private Sub Command1_Click()
��
'in der Taskliste sichbar
�� Call Sichtbar_in_TaskListe(True)
End Sub
Private Sub Command2_Click()
��
'nicht in der Taskliste sichbar
��
Call Sichtbar_in_TaskListe(False)
End Sub
Private Sub Form_Load()
�� Command1.Caption = "Sichtbar"
�� Command2.Caption = "Unsichtbar"
End Sub
Um
einen �hnlichen Effekt unter Windows NT zu erzielen,
k�nnen Sie auch die Anweisung
App.TaskVisible=False
verwenden.
Dies bewirkt, dass ein laufendes Programm nicht mehr unter
"Anwendungen" sondern unter den "laufenden
Prozessen" im
Windows NT Task-Manager angezeigt wird.
Nachteil daran:
Unter Form_QueryUnload
kann UnloadMode
nicht mehr abgefangen werden,
wenn das Programm "abgew�rgt" wird.
�
|