隱藏一個(gè)程序的運(yùn)行最簡(jiǎn)單的方法是將窗體的Visible設(shè)為False。但是只要用Ctrl+Alt+Del將程序列表呼出就完全露餡了。那么怎樣徹底隱藏正在運(yùn)行的程序呢?其實(shí)很簡(jiǎn)單。 我們知道,后臺(tái)運(yùn)行的程序有很多。但是只有一部分出現(xiàn)在程序列表里,多數(shù)系統(tǒng)程序并不出現(xiàn)。實(shí)際上,被注冊(cè)成為“服務(wù)器”的進(jìn)程不會(huì)出現(xiàn)在程序列表里。 所用API函數(shù):熱點(diǎn)網(wǎng)絡(luò) Private Declare Function GetCurrentProcessId Lib "kernel32" Alias "GetCurrentProcessId" () As Long 這個(gè)函數(shù)可以獲得當(dāng)前進(jìn)程一個(gè)唯一的標(biāo)識(shí)符。 Private Declare Function RegisterServiceProcess Lib "kernel32" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long 這個(gè)函數(shù)可以將進(jìn)程 ID 號(hào)為dwProcessID的進(jìn)程注冊(cè)或取消注冊(cè)為“服務(wù)器”。 所用常量: 這里的常量也就是dwType的值。 Const RSP_SIMPLE_SERVICE = 1 注冊(cè)為“服務(wù)器”。 Const RSP_UNREGISTER_SERVICE = 0 取消“服務(wù)器”注冊(cè)。 程序: Public Sub MakeMeService() Dim pid As Long, reserv As Long '獲取當(dāng)前進(jìn)程ID pid = GetCurrentProcessId() '注冊(cè)為服務(wù)器 regserv = RegisterServiceProcess(pid, RSP_SIMPLE_SERVICE) End Sub Public Sub UnMakeMeService() Dim pid As Long, reserv As Long '獲取當(dāng)前進(jìn)程ID pid = GetCurrentProcessId() '取消服務(wù)器注冊(cè) 熱點(diǎn)網(wǎng)絡(luò) regserv = RegisterServiceProcess(pid, RSP_UNREGISTER_SERVICE) End Sub 不過(guò)用這種方法也不能保證程序運(yùn)行時(shí)不被查到,如用 程序獵手 就可以查出來(lái)。