Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запуск от имени администратора Win 7 
:(
    Опции темы
lollollollol
Дата 7.5.2013, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Добрый вечер. Не могу запустить на Win 7 не могу запустить программу от имени администратора.

Когда правой кнопкой нажимаете, есть Запуск от имени админа. 

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

Перешарил все коды инета, у меня вообще ругается на runas, говорит что незнает такой команды.
PM MAIL   Вверх
Poseidon
Дата 7.5.2013, 23:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



Цитата(lollollollol @  7.5.2013,  18:57 Найти цитируемый пост)
Перешарил все коды инета, у меня вообще ругается на runas, говорит что незнает такой команды.
Да ладно,первые 5 ссылок яндекса отвечают на твой вопрос. runas - это вообще самопальная функция:
Код

function runas(username, password, command: string): string;
var
  si: tstartupinfo;
  pi: tprocessinformation;
  puser, ppass, pdomain, pprogram: array [0..255] of wchar;
  lasterror: dword;
  resultstring: string;
begin
  zeromemory(@si, sizeof(si));
  si.cb:=sizeof(si);
  zeromemory(@pi, sizeof(pi));
 
  stringtowidechar(username, puser, 255);
  stringtowidechar(password, ppass, 255);
  stringtowidechar('', pdomain, 255);
  stringtowidechar(command, pprogram, 255);
  createprocesswithlogonw(
    puser,
    pdomain,
    ppass,
    1, //logon_with_profile,
    pprogram,
    nil,
    create_default_error_mode or create_new_console or
    create_new_process_group or create_separate_wow_vdm,
    nil,
    nil,
    si,
    pi
    );
  lasterror:=getlasterror;
  case lasterror of
    0: resultstring:='success!';
    86: resultstring:='wrong password';
    1326: resultstring:='wrong username or password';
    1327: resultstring:='logon failure user account restriction';
    1385: resultstring:='logon failure the user has not been granted the requested logon type at this computer.';
    2: resultstring:='file not found';
    5: resultstring:='acced denied'
  else
    resultstring:='error '+inttostr(lasterror);
  end;
  result:=resultstring;
 end;


Вот, изучай: Запуск приложения в Windows 7 с правами администратора



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
lollollollol
Дата 8.5.2013, 07:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Оно всегда пишет что неверный логн или пароль, я пытался так уже.
PM MAIL   Вверх
lollollollol
Дата 8.5.2013, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



 shExecInfo^.lpVerb := 'runas';
Почему не раотает? runas не знакомая команда, а если заменить на open то открывает. но без прав
PM MAIL   Вверх
lollollollol
Дата 8.5.2013, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



    1326: resultstring:='wrong username or password';
непонимаю какое имя нужно этой функции!
Уже всё перепробывал. 
PM MAIL   Вверх
Poseidon
Дата 8.5.2013, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



Ты издеваешься? Я же тебе дал направление где искать.

Скачивай unitIsAdmin.pas и добавляей его к проекту. Потом рисуй код:
Код

uses unitIsAdmin, Winapi.ShellAPI;

procedure RunAsAdministrator(const source: string);
var
  shExecInfo: PSHELLEXECUTEINFOW;
begin
  New(shExecInfo);
  with shExecInfo^ do
  begin
    cbSize := sizeof(SHELLEXECUTEINFO);
    fMask := 0;
    Wnd := 0;
    lpVerb := 'runas';
    lpFile := PChar(ExtractFileName(source));
    lpParameters := '';
    lpDirectory := PChar(ExtractFilePath(source));
    nShow := SW_SHOWNORMAL;
    hInstApp := 0;
  end;
  ShellExeCuteex(shExecInfo);
  Dispose(shExecInfo);
  shExecInfo := nil;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  if not IsUserAnAdmin then
    begin
      RunAsAdministrator(Application.ExeName);
      Application.Terminate;
    end;
end;


Это сообщение отредактировал(а) Poseidon - 8.5.2013, 21:21


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
lollollollol
Дата 9.5.2013, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



lpVerb := 'runas';

я же сказал что комп ругается, не знает он такой команды.
Если тут прописат open, запустит но без прав. А иначе на нессответствие ругается
PM MAIL   Вверх
Akella
Дата 9.5.2013, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



runas это не команда
PM MAIL   Вверх
lollollollol
Дата 9.5.2013, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Впринципе я уже с помощью манифеста сделал, но всё таки не пойму почему с runas не работает
PM MAIL   Вверх
Poseidon
Дата 9.5.2013, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



Цитата(lollollollol @  9.5.2013,  11:00 Найти цитируемый пост)
я же сказал что комп ругается, не знает он такой команды.
Скинь скрин этой "ругни"



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Dik0n
Дата 9.5.2013, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



100% - рабочий код, в своем приложении использую.
Код

function RunAsAdmin(hWnd: HWND; const filename, Parameters: string): Boolean;
{
    See Step 3: Redesign for UAC Compatibility (UAC)
    http://msdn.microsoft.com/en-us/library/bb756922.aspx
}
var
    sei: TShellExecuteInfo;
begin
    ZeroMemory(@sei, SizeOf(sei));
    sei.cbSize := SizeOf(TShellExecuteInfo);
    sei.Wnd := hwnd;
    sei.fMask := SEE_MASK_FLAG_DDEWAIT or SEE_MASK_FLAG_NO_UI;
    sei.lpVerb := PChar('runas');
    sei.lpFile := PChar(Filename); // PAnsiChar;
    if parameters <> '' then
     sei.lpParameters := PChar(parameters); // PAnsiChar;
    sei.nShow := SW_SHOWNORMAL; //Integer;

    Result := ShellExecuteEx(@sei);
end;


Это сообщение отредактировал(а) Dik0n - 9.5.2013, 19:44
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
Poseidon
Дата 10.5.2013, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



Dik0n, чем он принципиально отличается от того, что привел я? И хотелось бы увидеть использование этой функции, а конкретно обработку ситуации, когда пользователь сам выбирает в контекстном меню "Запуск от имени администратора".


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
northener
Дата 10.5.2013, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: нет
Всего: 20



Цитата(Poseidon @  10.5.2013,  00:10 Найти цитируемый пост)
Dik0n, чем он принципиально отличается

А какая разница чем он отличаеися
Пусть сначала "ололо" ответит какую ошибку выдаёт его проект без манифеста.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
lollollollol
Дата 10.5.2013, 05:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Уважаемый northener, ололо здесть если и есть, то вы. Не стоит коверкать ники.

Poseidon, небыло возможности заскринить сразу так как на компе с которого писал нет делфи.
Вот скрин.
user posted image
А если прописать open вместо runas, то нет этого сообщения, но и запуск без прав

Dik0n, а твой код ошибки не выдаёт, но и не запускает.
PM MAIL   Вверх
Poseidon
Дата 10.5.2013, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



lollollollol, пройдись отладчиком и покажи строчку, которая вызывает это сообщение.


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Dik0n
Дата 10.5.2013, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



Цитата

Dik0n, а твой код ошибки не выдаёт, но и не запускает. 

Что то мне кажется что расширение у файла не .ехе, в этом и проблема.

Это сообщение отредактировал(а) Dik0n - 10.5.2013, 16:40
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
lollollollol
Дата 10.5.2013, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Да я сам себя запустить с правами пытаюсь, ParamStr(0) , расширение точно .exe.

Отладчиком пройтись не могу, у компа с делфи только в ПН буду, тогда и сделаю
PM MAIL   Вверх
kami
Дата 10.5.2013, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 15
Всего: 72



Цитата(lollollollol @  10.5.2013,  22:06 Найти цитируемый пост)
Да я сам себя запустить с правами пытаюсь, ParamStr(0) , расширение точно .exe.

Скорее всего, в пути к файлу есть пробел.
Обернуть ParamStr(0) в кавычки. (").
PM MAIL WWW   Вверх
Poseidon
Дата 10.5.2013, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



lollollollol, покажи именно свой код. Потому как я искренне не понимаю людей, которым вылаживаешь кусок рабочего кода, они его коверкают и потом отписываются "не работает". Я это о твоем ParamStr(0). У меня в примере его нет. Да, я понимаю что это то же самое, что и мое Application.ExeName, но все же наличие чего-то, что не приводилось в примере, наводит на мысли о еще каких-нибудь "доработках".


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
lollollollol
Дата 11.5.2013, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Код

procedure RunAsAdministrator(const source: string);
var
  shExecInfo: PSHELLEXECUTEINFOW;
begin
  New(shExecInfo);
  with shExecInfo^ do
  begin
    cbSize := sizeof(SHELLEXECUTEINFO);
    fMask := 0;
    Wnd := 0;
    lpVerb := 'runas';
    lpFile := PChar(ExtractFileName(source));
    lpParameters := '';
    lpDirectory := PChar(ExtractFilePath(source));
    nShow := SW_SHOWNORMAL;
    hInstApp := 0;
  end;
  ShellExeCuteex(shExecInfo);
  Dispose(shExecInfo);
  shExecInfo := nil;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
  if not IsUserAnAdmin then
    begin
      RunAsAdministrator(ParamStr(0));
      Application.Terminate;
    end;
end;


Р.S.
Application.ExeName = ParamStr(0) - Полный путь до запущеного файла

Добавлено через 9 минут и 52 секунды
Добрался до делфи. Для чстоты эксперемента вместо привычного ParamStr(0) использую Application.ExeName

Ошибка на строке
Код

ShellExeCuteex(shExecInfo);

Как я и ожидал. КОд не менял вообще за исключением 
Код

var
  shExecInfo: PSHELLEXECUTEINFOA; //Было PSHELLEXECUTEINFOW

Если оставить как было, компилятор ругается 
Цитата

[Error] Unit1.pas(36): Incompatible types: 'Char' and 'WideChar'
[Error] Unit1.pas(38): Incompatible types: 'Char' and 'WideChar'
[Error] Unit1.pas(42): Incompatible types: '_SHELLEXECUTEINFOW' and '_SHELLEXECUTEINFOA'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'

В Uses добавил только ShellAPI

Это сообщение отредактировал(а) lollollollol - 11.5.2013, 08:45
PM MAIL   Вверх
Dik0n
Дата 11.5.2013, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



Попробуй манифест добавь если его нет.
Код

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="asInvoker"
          uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
lollollollol
Дата 11.5.2013, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



С манифестом, как я уже выше говорил, работает.
Я не могу понять почему программно не запускается
PM MAIL   Вверх
Dik0n
Дата 11.5.2013, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



Цитата

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

Я привел пример манифеста, без админ прав! После чего, перезапускаете себя уже с правами.
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
lollollollol
Дата 12.5.2013, 07:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Извиняюсь, невнимательность, вечером попробую


P.S.
Что обозначают эти строки, почему именно эти знаечния задаются?
Цитата

version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"


Это сообщение отредактировал(а) lollollollol - 12.5.2013, 07:51
PM MAIL   Вверх
lollollollol
Дата 12.5.2013, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



С манифестом тоже не работает запуск
PM MAIL   Вверх
Dik0n
Дата 12.5.2013, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



Цитата(lollollollol @  12.5.2013,  07:50 Найти цитируемый пост)
P.S.Что обозначают эти строки, почему именно эти знаечния задаются?Цитатаversion="6.0.0.0"        publicKeyToken="6595b64144ccf1df"

Это на Delphi 7 так было выставлено, главное здесь это
Код

  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel
          level="asInvoker"
          uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>

Цитата

С манифестом тоже не работает запуск

С моим примером кода ?
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
lollollollol
Дата 12.5.2013, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



угу

А вот с таким манифестом
Код

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
 <assemblyIdentity
   type="win32"
   name="MyCoolProgram"
   version="0.1.0.0"
   processorArchitecture="*"/>
 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
   <security>
     <requestedPrivileges>
       <requestedExecutionLevel
         level="requireAdministrator"
         uiAccess="false"/>
       </requestedPrivileges>
   </security>
 </trustInfo>
</assembly>

 пытается под админом запустить. Но проблема в том что при запуске сразу запрос UAC, и если пользователь нажмёт НЕТ, приложение не запустится. 

Как можно запустить себя с правами администратора?
PM MAIL   Вверх
Akella
Дата 12.5.2013, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: нет
Всего: 329



Цитата(lollollollol @  12.5.2013,  18:07 Найти цитируемый пост)
пытается под админом запустить. Но проблема в том что при запуске сразу запрос UAC, и если пользователь нажмёт НЕТ, приложение не запустится. 

Ну да, а как по другому?
PM MAIL   Вверх
lollollollol
Дата 12.5.2013, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Я хотел пр запуске, если нет прав администратора показать информационное сообщение, с информацией о том что программе необходимы права. И повторно выполнить запуск с правами.

Вариант с манифестом не позволяет это сделать. А запуск через runas не работает.
PM MAIL   Вверх
Dik0n
Дата 12.5.2013, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 153
Регистрация: 11.5.2011

Репутация: 1
Всего: 10



level="requireAdministrator" заменить на level="asInvoker"
Потом запускать через 'runas' но UAC все равно появится при перезапуске, для того он и разработан, иначе бы все трояны втихаря, перезапускали себя под админом.

Это сообщение отредактировал(а) Dik0n - 12.5.2013, 21:12
--------------------
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ ◄◄◄ Сотри монеткой защитный слой
PM MAIL WWW   Вверх
lollollollol
Дата 12.5.2013, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Я не против UAC, мне главное чтобы runas работал. завтра попробую снова.
Хотя я уже пытался это сделать с Вашим манифестом. Там как раз  level="asInvoker", но не работает.

Это сообщение отредактировал(а) lollollollol - 12.5.2013, 21:14
PM MAIL   Вверх
Poseidon
Дата 12.5.2013, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 10
Всего: 133



Цитата(lollollollol @  12.5.2013,  18:07 Найти цитируемый пост)
Но проблема в том что при запуске сразу запрос UAC, и если пользователь нажмёт НЕТ, приложение не запустится. 
Как можно запустить себя с правами администратора?

А как по-твоему, в чем вообще заключается функция UAC? Так, от нечего делать ее привязали? Это и есть ее работа. Если пользователь не хочет что бы твоя программа получала админ-права (нажимает "НЕТ", то UAC и не даст их твоей программе.


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
lollollollol
Дата 13.5.2013, 05:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



это само собой, но смысл в том, что я хочу перед этим НЕТ вывести информационное сообщение, где поясню зачем именно нужны амин права приложению.

Это сообщение отредактировал(а) lollollollol - 13.5.2013, 05:58
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

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

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1384 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.