Как установить “Запущенный эта программа как администратор” программно

Вы можете использовать просмотр :

>>> text = "I need help. I need 5.4 dollar."
>>> re.sub(r'(?<=\D)\.', '\n', text)
'I need help\n I need 5.4 dollar\n'

В этом случае (?<=\D) утверждает, что символ перед литералом . не является цифрой. [115 ]

30
задан Cœur 15 April 2017 в 18:51
поделиться

5 ответов

Вы можете программно установить флаг «Запускать эту программу от имени администратора» (параметр вы найдете на вкладке «Совместимость» свойств EXE), установив простой ключ реестра. Вам необходимо создать строковое значение (REG_SZ) под одним из этих ключей (если вы хотите, чтобы настройка была для каждого пользователя или для каждой машины, соответственно) :

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers

или

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers

Имя значения должно быть полным путем к вашему исполняемому файлу (если путь содержит пробелы, не заключайте путь в кавычки), а данные значения должны содержать строку RUNASADMIN .

Для примера:

reg.exe Add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files\MyApp\Test.exe" /d "PUT__VALUE__HERE"

Режимы совместимости

WIN95 Windows 95
WIN98 Windows 98
WIN4SP5 Windows NT 4.0 SP5
WIN2000 Windows 2000
WINXPSP2 Windows XP SP2
WINXPSP3 Windows XP SP3
VISTARTM Vista
VISTASP1 Vista SP1
VISTASP2 Vista SP2
WIN7RTM Windows 7
WINSRV03SP1 Windows Server 2003 SP1
{{1} } WINSRV08SP1 Windows Server 2008 SP1

Уровень привилегий

RUNASADMIN Запуск программы от имени администратора

REG ADD "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers" / v {{ 1}} "C: \ temp \ compatmodel \ iconsext.exe" / t REG_SZ / d "WINXPSP3 RUNASADMIN" / f

Ссылки: http: // www. verboon.info/2011/03/running-an-application-as-administrator-or-in-compatibility-mode/

39
ответ дан 28 November 2019 в 00:02
поделиться

Это длинный путь, но если в названии EXE-файла есть слово «setup» или «install», Windows при запуске запускает запрос на повышение прав. Я не знаю, будет ли это работать с апплетом панели управления, хотя.

6
ответ дан Allon Guralnek 28 November 2019 в 00:02
поделиться

Упакуйте свое приложение в WinRar SFX в режиме без вывода сообщений + режим запроса администратора.

Гораздо проще, чем возиться с переменными .MSI.

0
ответ дан Benji 28 November 2019 в 00:02
поделиться

Я был бы удивлен, если бы это было возможно. Это был бы идеальный способ злоупотребления системой для вредоносного кода. Скорее всего, вам придется сказать пользователю, что администратор должен установить программу или что у него должны быть права администратора (как это делают все другие программы на windows).

-1
ответ дан 28 November 2019 в 00:02
поделиться

Пробовали ли вы использовать Application Compatibility Toolkit от Microsoft? Он анализирует ваше приложение и предоставляет шаблоны совместимости, которые могут помочь решить вашу проблему.

1
ответ дан 28 November 2019 в 00:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: