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

Вниз

Запуск приложения от имени   Найти похожие ветки 

 
aHTuXpust ©   (2008-12-16 19:14) [0]

Доброго времени суток, столкнулся с такой проблемой: занимаюсь разработкой программы на предприятии, которая могла бы запускать некоторые приложения с правами одмина.

Рылся в сети, нашел пример решения, но он мне не совсем подходит:

function CreateProcessWithLogonW(user:pwidechar; domain:pwidechar;
passw:pwidechar; flags: DWORD; lpApplicationName: PwideChar; lpCommandLine: PwideChar;
 dwCreationFlags: DWORD; lpEnvironment: Pointer;
 lpCurrentDirectory: PWideChar; const lpStartupInfo: TStartupInfo;
 var lpProcessInformation: TProcessInformation): BOOL; stdcall;external "advapi32.dll" name "CreateProcessWithLogonW";

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
   si: TSTARTUPINFO;
   pif: PROCESS_INFORMATION;
begin
 si.cb := SizeOf(tstartupinfo);
  si.dwFlags  := STARTF_USESHOWWINDOW;
  si.wShowWindow := SW_SHOWDEFAULT;
  si.lpReserved := nil;
  si.lpDesktop := nil;
  si.lpTitle := nil;

 CreateProcessWithLogonW("test", nil, "password", 0,
    nil, "notepad.exe",0, nil, nil, si, pif);
end;


не подходит потому что в данном примере жестко задается имя пользователя и пароль, а задача такова, что нужно эти данные брать из файла на сервере. Может кто сталкивался с такой проблемой, может кто знает, какую нить процедурку для решения подобной задачи, помогите пожалуйста. зарание благодарен.


 
Eraser ©   (2008-12-16 20:13) [1]

вопрос по-человечески сформулируйте.
пока только увидел 1 вопрос

> могла бы запускать некоторые приложения с правами одмина.

решение приведено в тексте вопроса.


 
Плохиш ©   (2008-12-16 22:48) [2]

Удалено модератором


 
Германн ©   (2008-12-17 00:58) [3]

Удалено модератором


 
aHTuXpust ©   (2008-12-18 17:14) [4]


> решение приведено в тексте вопроса.


Я же объяснил, что данный код мне не подходит, нужно имя пользователя и пароль из внешнего ресурса брать, например из файла или записи реестра.


 
Jeer ©   (2008-12-18 18:25) [5]


> нужно имя пользователя и пароль из внешнего ресурса брать

Бери, кто мешает ?


> занимаюсь разработкой программы на предприятии,

Бедное предприятие.


 
Сергей М. ©   (2008-12-18 20:01) [6]


> Рылся .. нашел пример


> может кто знает, какую нить процедурку


С миру по нитке - лысому на гребешок ?

Сам-то ты что-то сделал ли для продвижения к цели ?


 
Сергей М. ©   (2008-12-18 20:11) [7]


> например из файла


sl: TStringList;
..
sl.LoadFromFile(путь к файлу);


 
Германн ©   (2008-12-19 01:38) [8]


> Jeer ©   (18.12.08 18:25) [5]

Твоя вторая фраза, как раз и составляла [3] :(
Ну это так. Без претензий к кому-либо.


 
KSergey ©   (2008-12-19 09:34) [9]

можно обойтись без программы, просто запускать bat-файл, который будет содержать команду runas.

Вот только задумайтесь хотя бы на секунду что вы вообще делаете? Вы ж выдаете пользователю не админу логин/пароль админа!! бред.

Если такая задаче реально есть - надо сделать сервис, который уже будет стартовать с нужными правами и будет иметь интерфейс для требования запуска стороннего приложения по требованию. Так и MS решает подобные задачи, например в штатном инсталляторе.

Хотя опять же есть подозрение, что что-то в этой схеме в данном случае явно криво: не зря ж исходный пользователь не админ. А если ему надо выполнять действия доступные лишь админу - то почему он не админ - тоже не понятно.


 
aHTuXpust ©   (2008-12-22 17:03) [10]


> А если ему надо выполнять действия доступные лишь админу
> - то почему он не админ - тоже не понятно.


А не админ он по многим причинам... все перечислять не имеет смысла, скажу лишь одно, что такая политика безопасности.


 
Anatoly Podgoretsky ©   (2008-12-22 20:08) [11]

Которую ты хочешь нарушить.



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

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

Наверх




Память: 0.49 MB
Время: 0.016 c
15-1261684685
Игорь Шевченко
2009-12-24 22:58
2010.03.14
Можно ли разнести службы, связанные в одном svchost ?


2-1262680988
Николай Антонов
2010-01-05 11:43
2010.03.14
Вопрос по организации БД


15-1261982997
БарЛог
2009-12-28 09:49
2010.03.14
Девайс для массовая записи CD/DVD


2-1263470601
Darvin
2010-01-14 15:03
2010.03.14
Доступ к элементам двумерного PSafeArray


3-1235995874
Faiwer
2009-03-02 15:11
2010.03.14
Delphi компоненты не хотят работать с пустыми полями