Текущий архив: 2009.06.21;
Скачать: CL | DM;
Вниз
Как вывести пользователя из системы? Найти похожие ветки
← →
12 (2009-04-11 17:11) [0]т.е. то, что делает Диспетчер задач, когда выбираем закладку Пользователи, выбираем пользователя(НЕ СЕБЯ!), и кликаем по кнопке Выйти из системы.
Простите, что сюда, по моему тут больше народу сидит :)
← →
12 © (2009-04-14 09:05) [1]никто не знает?
думал обойдусь, нет похоже..
← →
Юрий Зотов © (2009-04-14 10:27) [2]ExitWindowsEx
← →
Юрий Зотов © (2009-04-14 10:32) [3]Плюс CreateProcessAsUser, конечно.
← →
12 © (2009-04-14 10:56) [4]логично
надо попробовать
спасибо
← →
12 © (2009-04-14 15:32) [5]Ситуация такова:
следуя логике, достаточно выполнить что-то от имени того пользователя.
пишу:
function CreateProcessWithLogonW(
user:pwidechar;
domain:pwidechar;
passw:pwidechar;
flags: DWORD;
lpApplicationName: PwideChar;
lpCommandLine: PwideChar;
dwCreationFlags: DWORD;
lpEnvironment: Pointer;
lpCurrentDirectory: PWideChar;
const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation)
:BOOL; stdcall;
implementation
{$R *.dfm}
function CreateProcessWithLogonW; external \\\"advapi32.dll\\\" name \\\"CreateProcessWithLogonW\\\";
procedure TForm1.Button1Click(Sender: TObject);
var
SI : TStartupInfo;
PI : TProcessInformation;
cmd: widestring;
begin
ZeroMemory(@SI, SizeOf(SI));
SI.cb:=SizeOf(SI);
if CreateProcessWithLogonW(
PWideChar(widestring(\\\"Ïåòð\\\")),
nil,
PWideChar(widestring(\\\"12345\\\")),
0,
nil,
PWideChar(widestring(\\\"c:\\\\logoff.exe\\\")),
CREATE_DEFAULT_ERROR_MODE,
nil, nil, SI, PI) then
Application.Terminate()
else
Showmessage(\\\"error\\\");
c:\\\\logoff.exe - получен из
program logoff;
{$APPTYPE CONSOLE}
uses
Windows;
begin
ExitWindowsEx(EWX_LOGOFF,0);
end.
и не получается ничего хорошего.
висит черная консоль с caption = c:\\\\logoff.exe, пользователь из списка не пропал, правда статус поменялся с Активен на Отключен, его процессы остались..
А taskmanager убирает его из списка, и процессы завершает.
Можно, конечно, пробежать по процессам и их прибить. Но а как сделать не Отключен, а вообще чтоб не было?
(сам когда запускаю c:\\\\logoff.exe, как и положено, все завершается, перехожу к вводу пароля, к входу в систему)
← →
Eraser © (2009-04-14 15:35) [6]> [0] 12 (11.04.09 17:11)
возможно спасет WTSLogoffSession.
← →
12 © (2009-04-14 15:56) [7]оказывается все можно решить смешнее..
logoff.exe {№сесиии}
правда, будет время, надо будет разобраться
← →
12 © (2009-04-14 16:03) [8]в смысле, тот logoff, который в system32 лежит
← →
Клоака (2009-04-15 00:26) [9]Удалено модератором
Страницы: 1 вся ветка
Текущий архив: 2009.06.21;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.005 c