download.bg
 Вход Списание  Новини  Програми  Статии  Форум  Чат   Абонамент  Топ95   Архив 

Скриване на процес от Task Manager - а ?

Автор
Съобщение
programings
Нед, 27.11.11, 09:49
Възможно ли е?
phrozencrew
Нед, 27.11.11, 10:27
Да, няма причина да не може. Просто правиш процеса на сервиз и би трябвало да си Ок.
programings
Нед, 27.11.11, 10:33
Дали ще стане да се натика като услуга през BAT файл?

sc create 123
binPath= "C:\123\123.exe"
DisplayName= "123"
start= "boot"

Идеята ми е примерно да стартирам мозила, и да не се вижда в Task Manager - а !

armenxxx1
Нед, 27.11.11, 12:22

RE: Скриване на процес от Task Manager - а ?

” Да, няма причина да не може. Просто правиш процеса на сервиз и би трябвало да си Ок. „

Аааа не не в вин 7 и сервисите се виждат....

” Дали ще стане да се натика като услуга през BAT файл?

sc create 123
binPath= "C:123123.exe"
DisplayName= "123"
start= "boot"

Идеята ми е примерно да стартирам мозила, и да не се вижда в Task Manager - а ! „

Абе стига с тези батове и вбс скриптове (интересното е че и аз преди само това знаех и доста интересни неща мъдрех...) Виж как става номера с Autoit

-------------------------------------------------------------------------------------
$process = "notepad.exe"

While 1
    WinWait ("Windows Task Manager")
    $index = ControlListView ("Windows Task Manager", "", 1009, "FindItem", $process)
    If $index = -1 Then
        Sleep(5)
    Else
        $hwnd = ControlGetHandle ("Windows Task Manager", "", 1009)
        DllCall("user32.dll", "int", "SendMessage", "hwnd", $hwnd, "int", 0x1008, "int", $index, "int", 0)
    EndIf
Wend
-------------------------------------------------------------------------------------

Източник... някъде тук...

programings
Нед, 27.11.11, 12:33
Ако става дума аз вече почти научих и AuotIt, но все още VBS и BAT ми са по-интересни!

Хубав скрипт, ама гледам, че следи за точно определен прозорец! Какво правим, ако OS е побългарена, и прозореца на диспечера не се казва Windows Task Manager, а Диспечер на задачите на Windows ?

Естествено, ще го сменим, но няма как да знаем на друг компютър дали операционната система е побългарена или е с оригиналният езиков пакет!

Послепис: При мен не работи и по двата начина!

редактиран от programings на 27.11.11 12:35
редактиран от programings на 27.11.11 12:45
armenxxx1
Нед, 27.11.11, 13:05
Прозореца трябва да се следи по Class -а му за да не стават такива неща...
programings
Нед, 27.11.11, 16:30
А как става това?
Доста търсих, но все не ми се получава!
редактиран от programings на 27.11.11 16:30
armenxxx1
Нед, 27.11.11, 16:49
$process = "notepad.exe"

While 1
    WinWait ("[CLASS:#32770]")
    $index = ControlListView ("[CLASS:#32770]", "", 1009, "FindItem", $process)
    If $index = -1 Then
        Sleep(5)
    Else
        $hwnd = ControlGetHandle ("[CLASS:#32770]", "", 1009)
        DllCall("user32.dll", "int", "SendMessage", "hwnd", $hwnd, "int", 0x1008, "int", $index, "int", 0)
    EndIf
Wend

programings
Нед, 27.11.11, 16:53
Вече става, мерси!
phrozencrew
Нед, 27.11.11, 19:20
Само за протокола ще вкарам малко инфо, как може да се провери кой е класа на прозореца:

До колкото схванах, по-горния скрипт крие процеса от Task Mnager-a, а дали има начин да се скрие и от tasklist, изпълнен в промпта? До сега не намерих начин, но съм сигурен, че трябва да има .

programings
Нед, 27.11.11, 19:41
Трябва да има, но ще е нещо по-особено!

Между другото ето как би изглеждала готова компилирана програма с графична среда за криене на процес :

hide_process.exe [376.7 KB]

редактиран от programings на 27.11.11 19:41
programings
Пон, 28.11.11, 17:07
Има недоволни от това, че процесите не се скривали читаво, а мигали!

Немигаща версия!

Скрипта би изглеждал така след леката модификация :
$varible = "notepad.exe"
 
While 1
    WinWait ("[CLASS:#32770]")
   
    $varible2 = ControlListView("[CLASS:#32770]", "", "SysListView321", "FindItem", $varible)
	
    If $varible2 = -1 Then
        Sleep(5)
    Else
        $varible3 = WinGetHandle("[CLASS:#32770]")
        $varible4 = ControlGetHandle($varible3, "", "SysListView321")
       
        DllCall("User32.dll", "int", "SendMessage", "hwnd", $varible3, "int", 0x0111, "int", 40025, "int", 0)
        DllCall("User32.dll", "int", "SendMessage", "hwnd", $varible4, "int", 0x1008, "int", $varible2, "int", 0)
    EndIf
	
 Wend

Втора версия на програмата с графична среда :

Ну заец 1.2 !

hide_process2.exe [377.9 KB]

Първо стартирайте Task Manager - а, и чак след това правете каквото и да е било!

редактиран от programings на 28.11.11 17:08
armenxxx1
Пон, 28.11.11, 20:54
А ето аз какво GUI измислих... С програмката може да се компилира втора програмка която да скрива зададения от вас процес... Hide Process Task

редактиран от armenxxx1 на 28.11.11 21:04
programings
Пон, 28.11.11, 21:01
Браво, Еди!

Доста полезно, и интересно е измайсторено!

Само си оправи линка!

Коментар

за нас | за разработчици | за реклама | станете автори | in english  © 1998-2020   Experta Ltd.