| 
				
				Узнать id процесса зная его имя
				 | 
 | 
| Anton93 | Дата: Пятница, 22.04.2011, 19:06 | Сообщение # 1 |  
 
 
 
Продвинутый 
Зарегистрирован: 06.01.2010
 
 
Группа: Модераторы 
Сообщений: 320 
Статус: Offline 
 
 | перерыл все, рабочего так и не нашел, знаю имя процесса, нужен его ид получить, как этот сделать?
 
   ICQ: 41896
 |  
|   | 
 |    | 
| C@T | Дата: Пятница, 22.04.2011, 19:53 | Сообщение # 2 |  
 
 
 
Авторитетный 
Зарегистрирован: 06.03.2010
 
 
Группа: Модераторы 
Сообщений: 265 
Статус: Offline 
 
 | держи, для себя писал когдато , в юзесах только tlhelp32 указать незабудь   Function GetProcID(name:string):Cardinal;   var   SnapShot:THandle;   process:TProcessEntry32;   begin   result := 0;   SnapShot := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS,0);//делаем снимок процессов   process.dwSize := SizeOf(Process);//указываем размер структуры   Process32First(SnapShot,Process);//начинаем перебирать процессы   repeat   if process.szExeFile = name then   begin   result := process.th32ProcessID;   CloseHandle(SnapShot);   exit;   end;   until Process32Next(SnapShot,Process) <> true;   CloseHandle(SnapShot);   end; 
 
  
 |  
|   | 
 |    | 
| Anton93 | Дата: Суббота, 23.04.2011, 13:25 | Сообщение # 3 |  
 
 
 
Продвинутый 
Зарегистрирован: 06.01.2010
 
 
Группа: Модераторы 
Сообщений: 320 
Статус: Offline 
 
 | ошибка! память не может быть read и так кстати многие примеры пишут
 
   ICQ: 41896
 |  
|   | 
 |    | 
| C@T | Дата: Суббота, 23.04.2011, 17:39 | Сообщение # 4 |  
 
 
 
Авторитетный 
Зарегистрирован: 06.03.2010
 
 
Группа: Модераторы 
Сообщений: 265 
Статус: Offline 
 
 | Quote (Anton93) ошибка! память не может быть read и так кстати многие примеры пишут    это где такая ошибка ? 
 
  
 |  
|   | 
 |    | 
| Anton93 | Дата: Суббота, 23.04.2011, 18:04 | Сообщение # 5 |  
 
 
 
Продвинутый 
Зарегистрирован: 06.01.2010
 
 
Группа: Модераторы 
Сообщений: 320 
Статус: Offline 
 
 | при запуске этой функции, ну когда до нее дело доходит. попробуй сам
 
   ICQ: 41896
 |  
|   | 
 |    | 
| gravitas | Дата: Воскресенье, 24.04.2011, 13:49 | Сообщение # 6 |  
 
 
 
Авторитетный 
Зарегистрирован: 01.05.2010
 
 
Группа: Пользователи 
Сообщений: 385 
Статус: Offline 
 
 | Нашел в РАТе функцию получения списка процессов. Там же и айди получается. Протестил - работает. Переделывать под получение айди из имени проца не стал.   Code function GetProc():String;   var      Proceso : TProcessEntry32;      ProcessHandle : THandle;      HayOtroProceso   : Boolean;   begin      Proceso.dwSize := SizeOf(TProcessEntry32);      ProcessHandle := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);      if Process32First(ProcessHandle, Proceso) then  //Si encuentra el primer proceso      begin        Result:= String(Proceso.szExeFile) + '|'+ IntToStr(Proceso.th32ProcessID)+'|';        repeat HayOtroProceso := Process32Next(ProcessHandle, Proceso);          if HayOtroProceso then            Result:=Result + String(Proceso.szExeFile) + '|'+ IntToStr(Proceso.th32ProcessID)+'|';        until not HayOtroProceso; //Y esto se repite hasta que Process32Next retorne False      end;      CloseHandle(ProcessHandle);   end;    (Proceso.th32ProcessID) 
  TheDeduction       Для ускорения получения ответов на ваши вопросы рекомендуется подкармливание в виде +'ов в рейтинг :)
 |  
|   | 
 |    | 
| Anton93 | Дата: Понедельник, 25.04.2011, 12:10 | Сообщение # 7 |  
 
 
 
Продвинутый 
Зарегистрирован: 06.01.2010
 
 
Группа: Модераторы 
Сообщений: 320 
Статус: Offline 
 
 | ок! буду пробовать, потом отпишусь о работоспособности
 
   ICQ: 41896
 |  
|   | 
 |    | 
| XSPY | Дата: Понедельник, 25.04.2011, 13:08 | Сообщение # 8 |  
 
 
 
Продвинутый 
Зарегистрирован: 28.01.2010
 
 
Группа: Пользователи 
Сообщений: 263 
Статус: Offline 
 
 | gravitas, не в спайнете нашел?
  Я не крекер,а программист!   Я не преступник-я свободный человек!   Лучше один раз накодить,чем сто раз качать билды!
 |  
|   | 
 |    | 
| gravitas | Дата: Понедельник, 25.04.2011, 13:26 | Сообщение # 9 |  
 
 
 
Авторитетный 
Зарегистрирован: 01.05.2010
 
 
Группа: Пользователи 
Сообщений: 385 
Статус: Offline 
 
 | XSPY, этот пример почти во всех РАТах используется. Но взял из CoolVibes  
  TheDeduction       Для ускорения получения ответов на ваши вопросы рекомендуется подкармливание в виде +'ов в рейтинг :)
 |  
|   | 
 |    | 
| C@T | Дата: Понедельник, 25.04.2011, 14:26 | Сообщение # 10 |  
 
 
 
Авторитетный 
Зарегистрирован: 06.03.2010
 
 
Группа: Модераторы 
Сообщений: 265 
Статус: Offline 
 
 | Quote (gravitas) Нашел в РАТе функцию получения списка процессов. Там же и айди получается. Протестил - работает. Переделывать под получение айди из имени проца не стал.      а мой код разве не тоже самое делает ?
 
  
 |  
|   | 
 |    | 
| XSPY | Дата: Вторник, 26.04.2011, 14:43 | Сообщение # 11 |  
 
 
 
Продвинутый 
Зарегистрирован: 28.01.2010
 
 
Группа: Пользователи 
Сообщений: 263 
Статус: Offline 
 
 | gravitas, не слыхал о таком...   а насчет примера-то да))    
  Я не крекер,а программист!   Я не преступник-я свободный человек!   Лучше один раз накодить,чем сто раз качать билды!
 |  
|   | 
 |    |