Здравствуйте, Злость, Вы писали:
З>А не кажется вам что документированная функция WTSTerminateProcess, вам что-то напоминает? Используем полет мысли и читаем MSDN.
З>И нахудой конец если мне не верите
...(дизасемблирование)...
Во-первых, спасибо за ответ,
Во-вторых, похоже на правду, по крайней мере процесс действительно завершается, но в моей реализации после этого завершается и мое приложение, но видимо тут мои бока в объявлении функции
...
#define WINSTA_DLL_NAME TEXT("winsta.dll")//for WinStationKillProcess
typedef BOOL (*WINSTFUNC)(HANDLE,DWORD,DWORD);
...
hinstDll = LoadLibrary(WINSTA_DLL_NAME);
...
FARPROC pFunc = GetProcAddress(hinstDll, WINSTA_FUNC_NAME);
WINSTFUNC pWinStationTerminateProcess=(WINSTFUNC)pFunc;
BOOL bResult=0;
try {
bResult = (pWinStationTerminateProcess)(WTS_CURRENT_SERVER_HANDLE,dwProcessId,(DWORD)0);
}catch(...){
bResult = bResult;
}