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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
14-15910
kull
2003-01-18 17:05
2003.02.06
Приколись, народ!


1-15678
Noname Master
2003-01-27 12:10
2003.02.06
Точка вместо запятой


1-15671
x02x
2003-01-29 20:01
2003.02.06
Люди, подскажите как можно сделать кнопку, другой формы(например.


3-15479
ruslan_as
2003-01-20 14:25
2003.02.06
IB6 подчиненный IBQuery


1-15606
Dmitry Filippov
2003-01-29 10:59
2003.02.06
Как получить варианты размеров шрифта