jump to navigation

Menyembunyikan Proses pada TASK Manager Sat - Sep 9, 2000

Posted by supriyatna in Programming, Windows.
Tags: , , ,
trackback

Adakalanya kita menginginkan agar proses dari applikasi yang dibuat tidak terlihat/ditampilkan pada TASK Manager, atau dialog yang muncul pada saat CTRL+ALT+DEL ditekan. Tujuan pokok-nya adalah untuk menghindari agar applikasi kita yang sedang berjalan tidak sembarangan dapat di End-Task.

Fungsi API kali ini yang digunakan adalah GetCurrentProcessId() yang fungsi utamanya untuk mendapatkan Process ID dari aplikasi yang saat ini berjalan. Dan fungsi RegisterServiceProcess() untuk mendaftarkan proses servis. Berikut syntak dari fungsi RegisterServiceProcess():

DWORD RegisterServiceProcess( dwProcessID, dwType )

Yang mana:

  • dwProcessID adalah Identifier dari proses yang akan diregister kedalam proses service. Jika NULL maka proses yang akan diregister adalah yang saat itu sedang aktif.
  • dwType merupakan nilai penentu apakah proses akan diregister atau di unregister. Jika nilai dwType adalah 1 maka proses akan disembunyikan/unregister dari service proses/Task Manager, dan proses akan ditampilkan/di-register pada proses service apabila dwType diset menjadi 0.

Berikut listing lengkap:
NB: cbTampilkan merupakan CheckBox Control.

Option Explicit
' Dapatkan No Proses yang akan di Register/Un-register
Private Declare Function GetCurrentProcessId Lib "kernel32" () _
  As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () _
  As Long
' Set register/un-register proses
Private Declare Function RegisterServiceProcess Lib "kernel32" _
  (ByVal dwProcessID As Long, ByVal dwType As Long) As Long

Private Sub cbTampilkan_Click()
  TampilkanPadaTask cbTampilkan.Value
  If cbTampilkan.Value Then
    Me.Caption = "Ditampilkan pada Task Manager"
  Else
    Me.Caption = "Disembunyikan dari Task Manager"
  End If
End Sub

Private Sub Form_Load()
  ' TampilkanPadaTask False
  Call cbTampilkan_Click
End Sub

Public Sub TampilkanPadaTask(bShow As Boolean)

Dim lProcessID As Long, lRegProcess As Long
lProcessID = GetCurrentProcessId()
If bShow Then
  ' Tampilkan pada Task Manager
  lRegProcess = RegisterServiceProcess(lProcessID, 0)
Else
  ' Sembunyikan pada Task Manager
  lRegProcess = RegisterServiceProcess(lProcessID, 1)
End If
End Sub

Comments»

No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: