![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
не могу убить процес, даже обычный...
|
|||
|
||||
| mr.DUDA |
|
||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
Во-первых, не
а
Во-вторых, в "ProcEntry.szExeFile" лежит полный путь к EXE'шке, а не сокращенный типа "r_server.exe". В-третьих, он там ещё и в верхнем регистре. со строками аккуратней работать надо ! -------------------- ![]() |
||||
|
|||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
Вот ещё баг. Открывать процесс нужно так:
Лучше всего переводить имена файлов в один регистр, а то половина путей - в верхнем, половина - в нижнем. -------------------- ![]() |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
mr.DUDA, и регистр учел, и полный путь к проку узнал,
пишет что прок терминатед! а прок всеравно как жил так и живет... что я еще не так сделал.... |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
а TerminateProcess() - понимает регистр? если да, тада не выйдет я для примера r_admina грохаю, а так я не знаю какие процессы будут грохаться |
|||
|
||||
| man2002ua |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 943 Регистрация: 12.11.2002 Где: Киев Репутация: нет Всего: 2 |
?? вы процесс открываете чтобы убить или для ожидания, что кто-то его прибьет... исп. PROCESS_TERMINATE -------------------- "Нет ничего более постоянного, чем временное" |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
man2002ua, использовал и PROCESS_ALL_ACCESS пробовал...
чета ему еще не хватает |
|||
|
||||
| man2002ua |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 943 Регистрация: 12.11.2002 Где: Киев Репутация: нет Всего: 2 |
кстати, .th32ModuleID это не processid.. исп. dwProcessID
-------------------- "Нет ничего более постоянного, чем временное" |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
man2002ua, у меня все процессы кроме системных выключились.
может кроме dw32ProcessID еще чегото не хватает? |
|||
|
||||
| man2002ua |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 943 Регистрация: 12.11.2002 Где: Киев Репутация: нет Всего: 2 |
ага, привилегии SeDebugPrivilege
а ты злодей, еще и системные косить хочешь... оставь хоть что-нить Это сообщение отредактировал(а) man2002ua - 25.9.2003, 16:12 -------------------- "Нет ничего более постоянного, чем временное" |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
man2002ua, как раз они то и нужны =)
|
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
SetDebugPrivilege - ничего по этому поводу мсдн не знает....
и я имел ввиду что все процесы выключаются даже которых я не указывал |
|||
|
||||
| man2002ua |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 943 Регистрация: 12.11.2002 Где: Киев Репутация: нет Всего: 2 |
// процедура включения привилегий - советую сохранить на будущее
BOOL SetPrivilege( HANDLE hToken, // токен процесса LPCTSTR Privilege, // имя привилегии BOOL bEnablePrivilege // дальше нечего пояснять - не относится к теме статьи ) { TOKEN_PRIVILEGES tp; LUID luid; TOKEN_PRIVILEGES tpPrevious; DWORD cbPrevious=sizeof(TOKEN_PRIVILEGES); // ищем идентификатор привилегии по ее имени if(!LookupPrivilegeValue( NULL, Privilege, &luid )) return FALSE; tp.PrivilegeCount = 1; tp.Privileges[0].Luid = luid; tp.Privileges[0].Attributes = 0; // получаем атрибуты привилегии для нашего процесса AdjustTokenPrivileges( hToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES), &tpPrevious, &cbPrevious ); if (GetLastError() != ERROR_SUCCESS) return FALSE; tpPrevious.PrivilegeCount = 1; tpPrevious.Privileges[0].Luid = luid; // получив атрибуты - включаем или выключаем привилегию if(bEnablePrivilege) { tpPrevious.Privileges[0].Attributes |= (SE_PRIVILEGE_ENABLED); } else { tpPrevious.Privileges[0].Attributes ^= (SE_PRIVILEGE_ENABLED & tpPrevious.Privileges[0].Attributes); } // изменяем привилегии токена AdjustTokenPrivileges( hToken, FALSE, &tpPrevious, cbPrevious, NULL, NULL ); if (GetLastError() != ERROR_SUCCESS) return FALSE; return TRUE; } // call if(!OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)){ Error("Error [%ld] retreiving token!", GetLastError()); return; } // устанавливаем привилегию "SeDebugName" if(!SetPrivilege(hToken, SE_DEBUG_NAME, TRUE)){ MessageBox(0,"Error settings SE_DEBUG_NAME privileges","Error",0); } CloseHandle(hToken); -------------------- "Нет ничего более постоянного, чем временное" |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
NULL, у меня WinCommander убивался такой прогой (естессно, если путь к ней совпадал с "buff"-ом). Просто запусти в отладке и гони до строки со сравниванием
Когда войдет в скобку - тогда убьет процесс (точно на 100%). -------------------- ![]() |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
mr.DUDA, я вычислил что путь не обязательно, а вот регистр роль играет....
man2002ua, прав не получил, ни как ты писал, ни как в факю http://forum.vingrad.ru/index.php?act=ST&f...t=0entry81746 чета все из рук валится. ужас какойта. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |