Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2011, 14:50   #1
silveran
Пользователь
 
Регистрация: 14.03.2011
Сообщений: 22
По умолчанию c++ ..при компиляции даёт ошибку..

я пока ламер в програмировании
пытаюсь откомпилить код через mingv
Цитата:
#define WINNT 1 // Define for using EndTask API

#include <windows.h>
#include <conio.h>
#include <stdio.h>

struct ProcInfo {
HWND hWnd;
DWORD dwProcId;
CHAR szTitle[255];
CHAR szClass[255];
};

void main()
{
DWORD dwProcId;
HWND hWnd;
ProcInfo mProc[255];
int mIdList[255];
int nCount = 0;
int nPID = 0;
int i = 0;

printf("DETECT HIDDEN PROCESS OF HIDE TOOLZ VER 2.X\n");
printf("Author: gianghoplus [gianghoplus@gmail.com]\n");
printf("Copyright (c) 2010 www.virusvn.com\n\n");

hWnd = FindWindow(0,0);

while( hWnd > 0)
{
if (GetParent(hWnd) == 0) // && IsWindowVisible(hWnd)
{
GetWindowThreadProcessId(hWnd, &dwProcId);

// Kiem tra xem OpenProcess co bi chan bang Hooking khong ?
if (!OpenProcess(PROCESS_QUERY_INFORMA TION, FALSE, dwProcId))
{
mProc[nCount].hWnd = hWnd;
mProc[nCount].dwProcId = dwProcId ;

GetWindowTextA(hWnd, mProc[nCount].szTitle, 255);
GetClassNameA(hWnd, mProc[nCount].szClass, 255);

printf("%2d. ProcessId: %d\n - Class Name: %s\n - Window Title: %s\n",
nCount+1, dwProcId, mProc[nCount].szClass, mProc[nCount].szTitle);
printf(" - Window Handle: 0x%X\n - Window State: %s\n\n",
hWnd, IsWindowVisible(hWnd) ? "Shown" : "Hidden");
nCount++;

for (i = 0; i < nPID; i++)
if (dwProcId == mIdList[i]) // Kiem tra co chua ?
break;

if (i == nPID)
mIdList[nPID++] = dwProcId; // Cho vao danh sach
}
}
hWnd = GetWindow(hWnd, GW_HWNDNEXT); // Chuyen sang cua so ke tiep
}

printf("\n=> Detected %d windows of %d hidden process.\n", nCount, nPID);

if (nCount > 0)
{
printf("\n<?> ARE YOU WANT TO TERMINATE ALL (Y/N): ");

CHAR c = getchar();

if (c == 'Y' || c == 'y')
{
for (i = 0; i < nCount; i++)
{
if (IsWindow(mProc[i].hWnd)) // Cua so nay con ton tai khong ?
{
// Thu tat lan luot bang 4 buoc ?
SendMessageA(mProc[i].hWnd, WM_CLOSE, 0, 0); // 1. Close
SendMessageA(mProc[i].hWnd, WM_QUIT, 0, 0); // 2. Quit
SendMessageA(mProc[i].hWnd, WM_DESTROY, 0, 0); // 3. Destroy
EndTask(mProc[i].hWnd, FALSE, TRUE); // 4. EndTask

printf("\n [+] Found Window Handle 0x%08X of ProcessId %4d. Terminate: ",
mProc[i].hWnd, mProc[i].dwProcId);
printf( IsWindow(mProc[i].hWnd) ? "Error" : "OK" ); // Kiem tra lai ket qua ?
}
}
}
}

printf("\n\nVISIT TO MY WEBSITES:\n\n"); // Tranh thu quang cao ti ^^!
printf(" [+] http://forums.giangho.tv\n [+] http://auto.giangho.tv\n [+] http://www.vn-soft.net");
getch();
}
даёт ошибку


C:\myprog>g++ 1.cpp
1.cpp:14:11: error: '::main' must return 'int'
1.cpp: In function 'int main()':
1.cpp:80:55: error: 'EndTask' was not declared in this scope

что не так делаю?
и если заодно подскажете как сделать чтоб не было выбора Y/N а по умолчанию Y было
где менять.. буду благодарен
silveran вне форума Ответить с цитированием
Старый 17.05.2011, 14:52   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Ну собственно в ошибке и написано что не так, метод main должен быть не void, а int.
Код:
int main()
{
...
}
Hollander вне форума Ответить с цитированием
Старый 17.05.2011, 14:56   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

int main() вместо void main() и в конце return 0 вероятно поможет. А на каком языке комменты?)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.05.2011, 15:24   #4
silveran
Пользователь
 
Регистрация: 14.03.2011
Сообщений: 22
По умолчанию

на вьетнамском
спасибо сделал
работает
вот только открывается консольное окно и после выполнения задачи не закрывается, подскажите что вставить чтоб консоль автоматом закрывалась, и процесс снимался
silveran вне форума Ответить с цитированием
Старый 17.05.2011, 15:24   #5
silveran
Пользователь
 
Регистрация: 14.03.2011
Сообщений: 22
По умолчанию

на вьетнамском
спасибо сделал
работает
вот только открывается консольное окно и после выполнения задачи не закрывается, подскажите что вставить чтоб консоль автоматом закрывалась, и процесс снимался
silveran вне форума Ответить с цитированием
Старый 17.05.2011, 15:28   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

getch() в конце убрать.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.05.2011, 15:32   #7
silveran
Пользователь
 
Регистрация: 14.03.2011
Сообщений: 22
По умолчанию

Всем Спасибо.. всё работает на Ура.. примите благодарности
silveran вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка при компиляции xreal C# (си шарп) 2 05.05.2011 01:43
SetLength для массива при компиляции выдаёт ошибку Gausse Общие вопросы Delphi 3 20.04.2011 15:35
Проблема при компиляции artemavd Общие вопросы Delphi 9 22.07.2010 11:03
Ошибка в алгоритме?Выдает ошибку после компиляции. Aerial Общие вопросы C/C++ 2 12.05.2010 16:52
Warning при компиляции... nighthack Общие вопросы C/C++ 3 06.06.2008 00:46