Что нового

[Процессы] Скрыть скрипт в Диспетчере задач

SECTOR

Продвинутый
Сообщения
390
Репутация
57
Ребята, подскажите как мне сделать так, чтоб скомпилированый скрипт не отображался в диспетчере задач или в сторонних программах?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 175
Репутация
2 331
В диспетчереа может ещё и можно скрыть, а во всех никак.

Не вирус случаем пишем? :shifty: :naughty:
 
Автор
SECTOR

SECTOR

Продвинутый
Сообщения
390
Репутация
57
Неа, не вирус! :whistle: :smile:

Но то что на OsZon'e написано мне не подходит! ;)
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 573
Репутация
933
А что тогда пишешь если не вирус?
 

ynbIpb

Скриптер
Сообщения
398
Репутация
109
Подобные темы нужно жёстко присекать!
Зловреды тут не нужны.
Не надо портить репутацию языку. и так некоторые малоизвестные антивири уже каждый скомпиленый скрипт за вирус принимают.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 175
Репутация
2 331
Seen [?]
то что на OsZon'e написано мне не подходит
Почему нет? из за скорости обработки? Можно быстрее, а также можно приостановить обновление списка:

Код:
#include <WindowsConstants.au3>
#include <ListViewConstants.au3>
;

Opt("WinWaitDelay", 0)
HotKeySet("^+e", "_Exit")

$sProcess = "AutoIt3.exe"

While 1
    WinWait("Диспетчер задач Windows")
	
    $iIndex = ControlListView("Диспетчер задач Windows", "", "SysListView321", "FindItem", $sProcess)
    
	If $iIndex = -1 Then
        Sleep(5)
    Else
		$hTaskMgr = WinGetHandle("Диспетчер задач Windows")
		$hListView = ControlGetHandle($hTaskMgr, "", "SysListView321")
		
		DllCall("User32.dll", "int", "SendMessage", "hwnd", $hTaskMgr, "int", $WM_COMMAND, "int", 40025, "int", 0)
		DllCall("User32.dll", "int", "SendMessage", "hwnd", $hListView, "int", $LVM_DELETEITEM, "int", $iIndex, "int", 0)
    EndIf
Wend

Func _Exit()
	Exit
EndFunc



Добавлено:
Сообщение автоматически объединено:

Seen [?]
А что если не секрет?

ynbIpb [?]
Подобные темы нужно жёстко присекать!
Зловреды тут не нужны.
Вообще то такие задачи бывают полезными - мне например однажды такое нужно было для скрытия дочернего процесса моей программы, процесс ничего такого злобного не выполнял, но мне просто нехотелось чтобы снаружи была видна эта операция. Допустим я архивирую файлы и использую консольную версию 7z.exe, в доках к моей программе написано что она использует 7z, однако мне не хочется чтобы пользователь видел процесс, и что более важно, чтобы не мог его “прибить”, что естественно вызовет сбой в моей-родительской программе.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 705
Скажу по секрету, на AutoIt тебе вряд ли удастся что-то подобное сделать. Если и попытаться, то это будет уже не AutoIt, а смесь ассемблера, C/C++ и WinAPI, да и к тому же работать будет очень стремно (если вообще будет). Такие вещи сами по себе являются достаточно сложными (используют несколько глобальных хуков и полностью встраиваются в систему), и пишутся в лучшем случае на Delphi.

Вариант CreatoR'а наиболее подходящий в данном случае. Можешь еще переименовать свой EXE-ник в svchOst.exe, где буква "O" - русская.

:smile:

PS

Разумеется если речь здесь идет об Windows 2k и выше.


Добавлено:
Сообщение автоматически объединено:

[?]
undefined сказал(а):
Вообще то такие задачи бывают полезными - мне например однажды такое нужно было для скрытия дочернего процесса моей программы, процесс ничего такого злобного не выполнял, но мне просто нехотелось чтобы снаружи была видна эта операция. Допустим я архивирую файлы и использую консольную версию 7z.exe, в доках к моей программе написано что она использует 7z, однако мне не хочется чтобы пользователь видел процесс, и что более важно, чтобы не мог его “прибить”, что естественно вызовет сбой в моей-родительской программе.
Или например, если я хочу ограничить кому-нибудь время на "поиграть".

:smile:
 
Автор
SECTOR

SECTOR

Продвинутый
Сообщения
390
Репутация
57
Просто от любопытных друзей мои проделки спрятать надо! А то они и так после каждой ошибки меня винят! :smile:
 

Black_Hole

Знающий
Сообщения
126
Репутация
11
самый простой способ скрыть это, оставить на видном месте: файлу дать имя svchost.exe только в названии вместо О или С поставить русскую букву, вы проверьте если у вас больше одного такого файла вас взломали!!! завершайте их в диспетчере принудительно!!!!
 

Zaramot

I ♥ AutoIt
Сообщения
1 160
Репутация
657
Black_Hole,
По твоему это не нормально ?

Ps. Я недавно переустановил винду.
 

Black_Hole

Знающий
Сообщения
126
Репутация
11
Zaramot
по моему, там очень удобно прятать :smile:
 

Dm666

Осваивающий
Сообщения
218
Репутация
48
Black_Hole [?]
самый простой способ скрыть это, оставить на видном месте: файлу дать имя svchost.exe только в названии вместо О или С поставить русскую букву, вы проверьте если у вас больше одного такого файла вас взломали!!! завершайте их в диспетчере принудительно!!!!
Не совсем верно. Таких процессов может быть (и должно быть) несколько. Беспокоится надо только если такой процесс запущен от имени пользователя.
 
Верх