Форум: "WinAPI";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
ВнизМАСТЕРА, плз, помогите разобраться с CreateProcessWithLogonW! Найти похожие ветки
← →
McSimm (2002-01-04 14:47) [14]Не представляю, как это делать для сервиса - не пробовал. Для обычного приложения:
Возможно достаточно указать константу
"WinSta0\Default"
В общем случае надо получить это в виде
WinStaName + "\" + DeskTopName
где
WinStaName и DeskTopName получаем функцией
function GetUserObjectName(hUserObject: THandle): string;
var
Count: DWORD;
begin
// have the the API function determine the required string length
GetUserObjectInformation(hUserObject, UOI_NAME, PChar(Result), 0, Count);
SetLength(Result, Count + 1);
if GetUserObjectInformation(hUserObject, UOI_NAME, PChar(Result), Count, Count) then
StrResetLength(Result)
else
Result := "";
end;
Передавая в качестве параметров
GetProcessWindowStation
и
GetThreadDesktop(GetCurrentThreadId)
соответственно.
Если WinStaName или DeskTopName окажутся = "", подставляем константы "WinSta0" или "Default" соответственно
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c