Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.28;
Скачать: CL | DM;

Вниз

Как получить имя текущего пользователя в NT сервисе   Найти похожие ветки 

 
Bobr ©   (2002-01-14 17:50) [0]

Как получить имя текущего пользователя в NT сервисе (т.е. того который сейчас работает в системе 2000, XP). GetUserName возвращает имя пользователя от которого стартован сервис, а мне нужно знать кто сейчас работает в системе?


 
Crowned   (2002-01-17 11:12) [1]

Выкинь лишнее из этой процедурки, мне лень...
procedure TForm1.HardwareInfo(var ComputerName,UserName,ProcessorType,NumberOfProcessors :string);
var
Size : cardinal;
PRes : PChar;
BRes : boolean;
lpSystemInfo : TSystemInfo;
begin
// Имя компьютера
Size := MAX_COMPUTERNAME_LENGTH + 1;
PRes := StrAlloc(Size);
BRes := GetComputerName(PRes, Size);
if BRes then ComputerName := StrPas(PRes);
// Имя пользователя
Size := MAX_COMPUTERNAME_LENGTH + 1;
PRes := StrAlloc(Size);
BRes := GetUserName(PRes, Size);
if BRes then UserName := StrPas(PRes);
// Процессор
GetSystemInfo(lpSystemInfo);
// ProcessorType := IntToStr(lpSystemInfo.dwProcessorType);wProcessorArchitecture
ProcessorType := IntToStr(lpSystemInfo.dwProcessorType);
NumberOfProcessors :=IntToStr(lpSystemInfo.dwNumberOfProcessors);
end;


 
bobr ©   (2002-01-17 15:07) [2]

Увы и ах, например я вхожу как "bobr", сервис стартован под SYSTEM, и естественно GetUserName возвратит SYSTEM. А мне надо получить именно того, кто вошел в систему (активен на данный момент, т.е. "bobr")



Страницы: 1 вся ветка

Текущий архив: 2002.03.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
3-90761
alexandervasjuk
2002-03-01 11:36
2002.03.28
Транзакции в IBX


3-90766
Malder
2002-02-27 16:58
2002.03.28
Создание обзоров


14-91066
lel (A)
2002-02-14 12:11
2002.03.28
Поздравляю всех с днем влюбленных!!!!!!!!


3-90764
chik_
2002-03-01 10:29
2002.03.28
SQL+BDE+DELPHI


14-91060
Andrey Klimov
2002-02-14 14:54
2002.03.28
Поддержим наших!