Текущий архив: 2004.10.24;
Скачать: CL | DM;
ВнизУбить все приложения текущего юзера Найти похожие ветки
← →
lightix (2004-10-07 15:17) [0]Каким образом можно убить все приложения текущего юзера?
Т.е. идея такая - пользователь для выхода с сервера терминалов закрывает программу которая ему прописана автоматом при запуске (меню) и при этом должны прибиться и все другие приложения , которые он не закрыл или выполняются на фоне и он их не видит.
Ну или по другому - как прибить одно приложение (плавающая панелька) если известно имя экзешника.
← →
lightix (2004-10-07 15:25) [1]как вариант - при создании процесса можно указать ведь что он является дочерним для того который его создает, и соответственно при убиении родительского процесса убить и дочерние?
что здесь изменить?
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
//WinExec("/ddic/admin/float_clock/float_clock.exe",1);
if( !CreateProcess( NULL, // No module name (use command line).
TEXT("/ddic/admin/float_clock/float_clock.exe"), // Command line.
NULL, // Process handle not inheritable.
NULL, // Thread handle not inheritable.
FALSE, // Set handle inheritance to FALSE.
0, // No creation flags.
NULL, // Use parent"s environment block.
NULL, // Use parent"s starting directory.
&si, // Pointer to STARTUPINFO structure.
&pi ) // Pointer to PROCESS_INFORMATION structure.
)
{
printf( "CreateProcess failed (%d).\n", GetLastError() );
return;
}
← →
Yuri Btr © (2004-10-07 15:46) [2]Наверно надо просто при закрытии контрольной программы определить имя пользователя, запустившего эту программу, и далее перебрать все процессы и убить те, где есть такой же пользователь.
Страницы: 1 вся ветка
Текущий архив: 2004.10.24;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.04 c