Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   невидимое cmd (https://forum.antichat.xyz/showthread.php?t=33205)

Ky3bMu4 11.02.2007 23:11

невидимое cmd
 
Пишу трояна на с++. Всё написал, только осталась полная ерунда. Нуно скрыть cmd. Нашёл
Код:

ShowWindow(hWnd, SW_HIDE);
hWnd - ет вроде имя класса. Помогите плиз. :)

begin_end 11.02.2007 23:38

Может я не понял, но чьё cmd нужно скрыть? Из какого приложения его нужно скрыть?
hWnd - это хэндл окна, котрое нужно скрыть.

Ky3bMu4 12.02.2007 12:31

Нужно скрыть cmd самогу трояна. А тока у жертвы возникнут подозрение: почему висит посреди экрана cmd.))

KEZ 12.02.2007 13:50

Цитата:

Всё написал, только осталась полная ерунда. Нуно скрыть cmd.
судя по твоим вопросам она не осталась а получилась

hWnd - это 4(32b)/8(64b) - байтное значение "идентификатора" окна (хэндла),
используя которое которое этим окном можно манипулировать
получить его можно ф-ией FindWindow() которая требует имя класса/+заголовок окна
и вообще можно обойтись без ShowWindow(), если создавать cmd ф-ией CreateProcess для шелла, заполняя некоторые структуры

надо было идти на поинт и пить а не WinAPI изучать!

:D

limpompo 12.02.2007 14:04

Цитата:

надо было идти на поинт и пить а не WinAPI изучать!

Не всем дано ходить на Поинты =) так что остаться Изучать WinAPI

begin_end 12.02.2007 14:17

Ky3bMu4, я думаю, следующий пример тебе поможет:
Код:

HWND GetConsoleHwnd(void)
{
#define MY_BUFSIZE 1024
    HWND hwndFound;
    char pszNewWindowTitle[MY_BUFSIZE];
    char pszOldWindowTitle[MY_BUFSIZE];
//Запоминаем заголовок консоли
    GetConsoleTitle(pszOldWindowTitle, MY_BUFSIZE);
//Делаем уникальную строку из всякой лабуды
    wsprintf(pszNewWindowTitle,"%d/%d",
                GetTickCount(),
                GetCurrentProcessId());
//Меняем заголовок на уникальный
    SetConsoleTitle(pszNewWindowTitle);
//Немного подождем
    Sleep(40);
//Находим хэндл
    hwndFound=FindWindow(NULL, pszNewWindowTitle);
//Меняем загловок окна обратно
    SetConsoleTitle(pszOldWindowTitle);
    return(hwndFound);
}

int main(int argc, char* argv[])
{
        //прячем окно
        ShowWindow(GetConsoleHwnd(), SW_HIDE);
        //делаем паузу, чтобы убедиться в результате
        Sleep(5000);
        return 0;
}


()leg 12.02.2007 20:14

Г-н
 
Ky3bMu4 если можно скинь исходник мне на мыло. я прграммировать только начинаю интересно было бы посмотреть....
invisible@doma.net.ua

Robin_Hood 12.02.2007 20:29

тебе просто нужно выполнение команд в cmd?если да попробуй system(), если я правильно тебч понял

Ky3bMu4 12.02.2007 20:35

Эх...

Код:

WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)

W!z@rD 14.02.2007 21:28

ShowWindow(хендл окна (для получения используй FindWindow), SW_HIDE)
а воообще лучше
winexec('cmd.exe',SW_HIDE)
либо
CreateProcess()


Время: 10:04