Jak mogę najlepiej zakończyć process innej aplikacji
Ostatnio zmodyfikowano 2011-11-05 06:58
yoogi Temat założony przez niniejszego użytkownika |
Jak mogę najlepiej zakończyć process innej aplikacji » 2011-11-04 18:58:50 Witam, mam dwie aplikacje (obie napisałem ja) i chcę za pośrednictwem pierwszej zakończyć drugą, jak to zoribć w najprostszy sposób. Pliki i rejestr odpadają :) |
|
m4tx |
» 2011-11-04 19:01:47 Na Linuksie najprostszy sposób to chyba system( "killall twojaaplikacja" ); . Na Windowsie zapewne uchwyty :P |
|
npHard |
» 2011-11-04 21:38:09 Sprecyzuj o jaki system. W linuksie i innych systemach zgodnych z POSIX możesz z poziomu C/C++ użyć funkcji kill do wysłania dowolnemu procesowi sygnału SIGKILL. Oczywiście musisz znać pid tego procesu... |
|
yoogi Temat założony przez niniejszego użytkownika |
» 2011-11-05 00:22:01 Windows, znalazłem rozwiązanie: BOOL KillProcessByName( char * szProcessToKill ) { HANDLE hProcessSnap; HANDLE hProcess; PROCESSENTRY32 pe32; DWORD dwPriorityClass; hProcessSnap = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 ); if( hProcessSnap == INVALID_HANDLE_VALUE ) { return( FALSE ); } pe32.dwSize = sizeof( PROCESSENTRY32 ); if( !Process32First( hProcessSnap, & pe32 ) ) { CloseHandle( hProcessSnap ); return( FALSE ); } do { if( !strcmp( pe32.szExeFile, szProcessToKill ) ) { hProcess = OpenProcess( PROCESS_TERMINATE, 0, pe32.th32ProcessID ); TerminateProcess( hProcess, 0 ); CloseHandle( hProcess ); } } while( Process32Next( hProcessSnap, & pe32 ) ); CloseHandle( hProcessSnap ); return( TRUE ); }
|
|
Drraven |
» 2011-11-05 06:58:36 nie trzeba znać procesu. Można też po nazwach wyłączać killall. a w windowsie to albo po uchwycie, albo WM:COMAND do innej aplikacji może? |
|
« 1 » |