Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Где ошибка ?


Автор: visual 15.12.2003, 04:04
Код

void CNirvanaDlg::TerminateProces(CString csExName)
{
HANDLE hSnap;
hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS|TH32CS_INHERIT, 0);
if (hSnap == NULL)
{
 AfxMessageBox("Error Load ToolHelp");
 
} else {
 
 PROCESSENTRY32 proc;
 
 if (Process32First(hSnap, &proc))
 {
  if (csExName==proc.szExeFile)TerminateProcess(hSnap,0);
  while (Process32Next(hSnap, &proc))
  {
   if (csExName==proc.szExeFile)
   {
    HANDLE ProcessHandle=NULL;
    ProcessHandle = OpenProcess(PROCESS_TERMINATE|SYNCHRONIZE, FALSE, proc.th32ProcessID);
    if (ProcessHandle!=NULL)
    {
     TerminateProcess(ProcessHandle,0);
     CloseHandle(ProcessHandle);
    }
    else
     AfxMessageBox("Not Open Process");
   }
  }
  CloseHandle(hSnap);
 }
}

}

Автор: mi49.Ok 15.12.2003, 05:54
А чё говроит-то?

Автор: Step 15.12.2003, 12:37
а ты уверен что у тебя дебаг правильно работает, обычно бывает наоборот
а вообще че за ошибки, где вылетает и т.д. и т.п.

Автор: visual 15.12.2003, 15:15
ошибки не показывает проста не убивает process

Автор: Ars 15.12.2003, 16:56
Про убиение процессов неоднократно было уже писано. Юзай поиск. Скорее всего не хватает привилегий.
Но вот что странно:
Код
if (Process32First(hSnap, &proc))
{
 if (csExName==proc.szExeFile)TerminateProcess(hSnap,0); попытка убить процесс с хэндлом, не являющимся хэндлом процесса

Автор: Vyacheslav 15.12.2003, 17:32
MSDN:
The calling application must set the dwSize member of PROCESSENTRY32 to the size, in bytes, of the structure
Код

PROCESSENTRY32 proc;
proc.dwSize = sizeof(PROCESSENTRY32);  

Так что возможно дебагер это делает за тебя сам и поэтому все прекрасно работает, а в релизе там мусор вместо конкретного значения

Автор: visual 15.12.2003, 19:14
Vyacheslav спосиба всё работает но ... есть проблема
как мне выбраь процесы данного юзера ?

Автор: mi49.Ok 16.12.2003, 06:14
Ой, что-то я затупил. Ты же про дебуг и релиз спросил. Ты пишсал бы это в названии вопроса.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)