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

Вниз

Работа с реестром под бесправным юзером   Найти похожие ветки 

 
Olimpik   (2002-11-25 20:16) [0]

Здраствуйте.
Я не могу разобраться, можно ли запустить приложение с правами администратора под простым юзером на W2k?
Если можно, то как, и смогу ли я при этом записать в HKEY_LOCAL_MACHINE что-нибудь?
Сможет ли он завершить работу программы?
Моя программа добавлена в автозапуск для всех юзеров software\microsoft\windows\currentversion\run.


 
Opuhshii   (2002-11-25 20:49) [1]

Да!, можно запустить приложение с правами администратора,. только запускать её надо по-особенному,.. CreateProcessAsUser естественно Администратор - это вы,.. )


 
ZZ   (2002-11-26 02:01) [2]

Только для W2k больше подходит CreateProcessWithLogonW..

Сможет ли он завершить работу программы?
Если он - это юзер, то он может закрыть окно программы, а вот через завершение процесса не получится.


 
Olimpic   (2002-11-26 09:25) [3]

А Вы не можете рассказать поподробнее или указать ссылку?


 
Marcus   (2002-11-26 11:40) [4]

В HKEY_LOCAL_MACHINE сможешь записать и даже создать подраздел, если откроешь его с правом KEY_WRITE, а не KEY_ALL_ACCESS


 
Игорь Шевченко   (2002-11-26 14:50) [5]

Знаем мы, как запустить программу с правами администратора под NT от простого пользователя, знаем, рассказали нам специалисты.
Знаем, но не скажем. (с) Химия и жизнь - переписка.


 
Olimpic   (2002-11-26 18:33) [6]

Интересно, почему не расскажите?


 
Olimpic   (2002-11-26 18:43) [7]

У меня есть пароль admina, то есть я и есть Admin. Мне бы сделать клиентское приложение, которое позволяло бы изменять реестр под юзером.


 
Cobalt   (2002-11-30 00:02) [8]

Запускай его(приложение) с правами Админа. т.е. см. CreateProcessWithLogonW


 
don-do   (2002-11-30 11:50) [9]

function EnablePrivilege(PrivName:string): boolean;
var
TokenPriv: TTokenPrivileges;
TokenHandle: THandle;
begin
Result:=false;
if OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES,
TokenHandle) then
if LookupPrivilegeValue(nil,PChar(PrivName),
TokenPriv.Privileges[0].LUID) then
begin
TokenPriv.PrivilegeCount:=1;
TokenPriv.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
if not AdjustTokenPrivileges(TokenHandle,false,TokenPriv,0,
TTokenPrivileges(nil^),DWORD(nil^)) then exit;
end;
Result:=True;
end;


If GetVersion < $80000000 then
EnablePrivilege("SeSystemtimePrivilege"); //SE_SYSTEMTIME_NAME
If (RebootFlags and (EWX_POWEROFF or EWX_REBOOT or EWX_SHUTDOWN))>0 then
EnablePrivilege("SeShutdownPrivilege");




 
ZZ   (2002-11-30 16:08) [10]

don-do
Пять... нет даже десять баллов за ответ!!!



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

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

Наверх





Память: 0.46 MB
Время: 0.011 c
3-15513
Ч
2003-01-21 12:06
2003.02.06
Как программно присвоить Null


1-15727
xyz
2003-01-20 19:32
2003.02.06
Морфологический анализ слов


14-15836
Hohol
2003-01-22 16:33
2003.02.06
Справочники .....


4-15988
Ipx
2002-12-24 08:38
2003.02.06
Как поместить панель задач (если возможно) в любое место (по высо


1-15550
TAN
2003-01-28 15:26
2003.02.06
Дурацкий вопрос по копированию файлов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский