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

Вниз

Запуск процесса под юзером...   Найти похожие ветки 

 
istok   (2010-02-26 12:30) [0]

использую следующий код чтобы запустить процесс под учеткой текущего юзера (управляющий процесс работает под system):


function RunProcessAsCurrentUser(FileName: string): Boolean;
var
 ProcessId: Integer;
 hWindow, hProcess, TokenHandle: THandle;
 si: Tstartupinfo;
 p: Tprocessinformation;
begin
   Result := False;
   hWindow := FindWindow("Progman", "Program Manager");
   GetWindowThreadProcessID(hWindow, @ProcessID);
   hProcess := OpenProcess (PROCESS_ALL_ACCESS, FALSE, ProcessID);
   if OpenProcessToken(hProcess, TOKEN_ALL_ACCESS, TokenHandle) then
   begin

     FillChar(si,SizeOf(si),0);
     with Si do begin
       cb := SizeOf( Si);
       dwFlags := startf_UseShowWindow;
       wShowWindow := SW_NORMAL;
       lpDesktop := PChar("winsta0\default");
     end;

     Result :=  CreateProcessAsUser(TokenHandle, nil,
       PChar(FileName),
       nil, nil, false, Create_default_error_mode, nil, nil, si, p);
   end;
end;


проблема в том, что в win7 при включенном uac процесс запускается без админских привелегий. вопрос - что подправить, чтобы процесс запускался с этими привилегиями, которые есть у управляющего процесса.

спасибо


 
Eraser ©   (2010-02-26 21:44) [1]

короче нужно запустить программу от имени системы, но в текущей терм. сессии?


 
Алексей4105   (2010-02-28 16:57) [2]

Можно добавить ключ реестра uac на разрашение запуска под админом.
Найти ключ реестра можно запустив regedit поиск. До этого указать на запуск файла правой кнопкой запускать под админом и поиск в реестре наладить по названию файла.



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
15-1365336685
Разведка
2013-04-07 16:11
2013.09.15
как создать сгенерировать UUID


3-1292492845
RWolf
2010-12-16 12:47
2013.09.15
ClientDataSet: Insufficient memory for this operation


2-1356680112
aka
2012-12-28 11:35
2013.09.15
Работа с указателями


1-1313139731
vile
2011-08-12 13:02
2013.09.15
Русская кодировка в английской локали


2-1357313213
jjiurafds
2013-01-04 19:26
2013.09.15
Можно ли такое сделать в SQL или нет???