Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Вниз

LogonUser,.......CreateProcessAsUser ??? Est problems...   Найти похожие ветки 

 
gluka   (2002-01-16 06:22) [0]

Есть проблема!!!
Логон юзера роходит нормально а вот CreateProcessAsUser нехочет
что может быть?


var
PHT: THandle;
SI: TStartupInfo;
PI: TProcessInformation;
begin
if LogonUserW("user","127.0.0.1","niscaju",LOGON32_LOGON_INTERACTIVE,
LOGON32_PROVIDER_DEFAULT,PHT) then
begin
GetStartupInfo(si);
CreateProcessAsUserW(PHT,"c:\windows\notepad.exe",
nil,nil,nil,false,CREATE_DEFAULT_ERROR_MODE,nil,
Pchar(GetCurrentDir),si,pi);


 
Anonymous   (2002-01-16 09:34) [1]

What is the return value of GetLastError right
after CreateProcessAsUser call?


 
Raptor   (2002-01-16 11:50) [2]

Возможно потому, что ты используешь функцию CreateProcessAsUserW. Она должна получать даные типа PWideChar, а не PChar как у тебя:
CreateProcessAsUserW(...,Pchar(GetCurrentDir),...);


 
Tosov   (2002-01-16 21:32) [3]

gluka
Не знаю как в XP, а в 2000 CreateProcessAsUser требует привилегий, которые простой юзер может никогда и не получить. Попробуй вместо этих 2 функций createprocesswithlogonw (см MSDN)


 
gluka   (2002-01-17 01:05) [4]

Anonymous
> What is the return value of GetLastError right
> after CreateProcessAsUser call?
<< Error code 1314 !!!(а что это значит???) >>

Raptor ©
> CreateProcessAsUserW(...,Pchar(GetCurrentDir),...);
Я ставил и CreateProcessAsUserА и.тд. тотже праблемс...

Tosov ©
> ... createprocesswithlogonw...
Пытался но нетут то было, тотже праблемс...

Я расковырял стандартный runas.exe он использует только
createprocesswithlogonw
и
CreateProcessAsUser

и
ещё пару неизвестных мне приколов, на которые нет в Хелпе позначки...
А больше ничего особенного неувидел.
Что же всётаки может быть?


 
Anonymous   (2002-01-17 09:36) [5]

1314 is ERROR_PRIVILEGE_NOT_HELD, meaning that the
caller does not have sufficient privileges to call
this function.

CreateProcessAsUser requires SE_ASSIGNPRIMARYTOKEN_NAME
and SE_INCREASE_QUOTA_NAME privileges. The former is
normally granted to the LocalSystem account only, the
latter is granted to the Administrators group as well.
LocalService and NetworkService accounts, new for XP,
also have these privileges.

As result, the CreateProcessAsUser function can only
be used from a service, but not from a regular
application.

The CreateProcessWithLogonW function does not require
any privileges, so it should work from any user account.




 
gluka   (2002-01-17 13:38) [6]

Если я правильно понял то мне надо получить две привелегии,
как минимум.
SE_ASSIGNPRIMARYTOKEN_NAME
and
SE_INCREASE_QUOTA_NAME

И вообще эта г... будет работать только в Сервисе, что тоже неплохо...

>The CreateProcessWithLogonW function does not require
>any privileges, so it should work from any user account.
А это значить должно работать. Да? Попробую!!!




 
Gluka   (2002-01-17 21:04) [7]

Ну что предложения будут или нет.....?


 
Tosov   (2002-01-17 23:08) [8]

Gluka ©
Так тебя CreateProcessWithLogonW устраивает ?
С остальными функциями надо системные права :(

Описание функции http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1008585518&n=5
Вместо var lpCommandLine: PWideChar;
lpCommandLine: PWideChar;
У меня в Win2000 это работает отлично и без ошибок.
PS. Использовать вместь PChar PWideChar. PWideChar(txt) не прокатит..


 
gluka   (2002-01-19 05:08) [9]

Да действительно PChar невте ворота надо PWideChar юзать.

Да кстати кому надо то StartUpInfo можно получить с помощью
GetStartUpInfoEx .

Да а если для своего процесса получить привилеги
SE_ASSIGNPRIMARYTOKEN_NAME
and
SE_INCREASE_QUOTA_NAME

то LogonUser and CreateProcessAsUser должно воркать!?!?!

А случайно ненадоли использовать какойто LogoutUser!???


Спасибо всем!!!


 
Tosov   (2002-01-19 07:13) [10]

Если получишь SE_ASSIGNPRIMARYTOKEN_NAME and SE_INCREASE_QUOTA_NAME, то все будет работать (если получишь :)
Logout делать не надо



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

Форум: "WinAPI";
Текущий архив: 2002.03.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
14-57506
Pete
2002-02-04 12:42
2002.03.18
Я тоже хочу...


1-57342
Канадин Владимир
2002-02-28 12:09
2002.03.18
Достать подменю


1-57429
Help!
2002-03-03 01:34
2002.03.18
Проблемы запуска!!!!!!


7-57526
Kostya Luzan1
2001-12-12 22:14
2002.03.18
PS/2 port


6-57479
samuray
2001-12-30 13:48
2002.03.18
IPX через winsock2





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский