Windows Основы работы с реестром - синтаксис, структура reg-файла.

Wu-Tang

Эксперт клуба THG
Сообщения
193
Реакции
62
Баллы
508
а я вот не знаю как это расценивать теперь, тк по классике запуск от юзера имеет в шапке путь к cmd и все, а тут все равно пишется администратор, с припиской с ограниченными правами.
вот тоже самое это или нет, я не знаю.
 

Кирилл

Команда форума
Администратор
Сообщения
14,216
Реакции
6,246
Баллы
1,093
Ну по другому, мне кажется, никак - или UAC возвращай...
 

Wu-Tang

Эксперт клуба THG
Сообщения
193
Реакции
62
Баллы
508
а что насчет моего вопроса по отключению uac твиком или через gui?
 

Кирилл

Команда форума
Администратор
Сообщения
14,216
Реакции
6,246
Баллы
1,093
а что насчет моего вопроса по отключению uac твиком или через gui?
Прикинул вариант с ruanasinvoker - тебе получается в параметр command надо записать такую строку:

cmd /min /c "set __COMPAT_LAYER=RunAsInvoker& start "" "cmd.exe""
 

Кирилл

Команда форума
Администратор
Сообщения
14,216
Реакции
6,246
Баллы
1,093
Примерно так:

Код:
Windows Registry Editor Version 5.00

 ;Каскаданое меню Wu-Tang
[HKEY_CLASSES_ROOT\DesktopBackground\Shell\CMD_Menu]
"MUIVerb"="Запустить командную строку"
"SubCommands"="runas;runas_user"
"Icon"="cmd.exe"
; "Position"="Bottom" - если надо поднять пункт меню
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas]
@="От имени администратора"
"Icon"="cmd.exe"
"HasLUAShield"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas\command]
@="cmd.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas_user]
@="От имени пользователя"
"Icon"="cmd.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas_user\command]
@="cmd /min /c \"set __COMPAT_LAYER=RunAsInvoker& start \"\" \"cmd.exe\"\""
 

Wu-Tang

Эксперт клуба THG
Сообщения
193
Реакции
62
Баллы
508
теперь самое интересное, как это будет отрабатывать на системах с включенным uac, проверю на виртуалке.
 

Wu-Tang

Эксперт клуба THG
Сообщения
193
Реакции
62
Баллы
508
всем привет :Drinks:
решил вернуться к этой тематике, тк решил обновить свой твикер, добавив функционал, и дополнительные изменения, много времени прошло конечно, но было просто не до этого, с этой пандемией, экономическими проблемами, но интересы не умерли и ждали своего часа.
в общем, касаемо твика, добавление командной строки в контекстное меню моего компьютера, папок, рабочего стола, юзаю:
Код:
; Добавление пункта командная строка в контекстное меню: моего компьютера, папок, дисков.

[HKEY_CLASSES_ROOT\Directory\shell\cmd_menu]
"icon"="cmd.exe"
"MUIVerb"="Командная строка"
"SubCommands"="runas;runas_user"

[HKEY_CLASSES_ROOT\Directory\Background\shell\cmd_menu]
"icon"="cmd.exe"
"MUIVerb"="Командная строка"
"SubCommands"="runas;runas_user"

[HKEY_CLASSES_ROOT\Drive\shell\cmd_menu]
"icon"="cmd.exe"
"MUIVerb"="Командная строка"
"SubCommands"="runas;runas_user"

[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\runas]
@="Командная строка"
"NoWorkingDirectory"=""
"HasLUAShield"=""
"Icon"="cmd.exe"
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\runas\command]
@="cmd.exe"

; CommandStore

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas]
@="От имени администратора"
"Icon"="cmd.exe"
"HasLUAShield"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas_user]
@="От имени пользователя"
"Icon"="cmd.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\runas_user\command]
@="cmd.exe /s /k pushd \"%V\""
и там где включен uac все корректно работает, те и запуск от админа и от юзера.
а вот там, где uac выключен, то запускает всегда от админа, хоть выбираешь от юзера, и чтобы запускалось от юзера, я добиться не смог.

сейчас попробовал заменить последнюю строку (41), на предложенную Кириллом:
Код:
@="cmd /min /c \"set __COMPAT_LAYER=RunAsInvoker& start \"\" \"cmd.exe\"\""
протестил на системе с выключенным uac, запуск от юзера выдает такое окно - http://ipic.su/img/img7/fs/2021-05-06_11-45-35.1620291001.jpg
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Сообщения
14,216
Реакции
6,246
Баллы
1,093
Данный параметр не понижает права, как таковые, а всего лишь подавляет запрос на UAC - и получается, что если прав нет (по умолчанию) то старт программы с правами юзера.
Видимо при чтении флага процесс уходит в бесконечный цикл, типа:

- Запустите с подавлением запроса UAC, пожалуйста, Танечка.
- Не могу, Wu-Tang Батькович, у вас уже некуда, он отключен....
- Да я не спрашивал. что там у вас отключено! Запустите с подавлением запроса UAC, Танечка!
- Сейчас попробую. Нечего подавлять...
- Подавите...
- Нечего...

Ну и далее по накатанной.

Требуется от 2 до 4 уровня бегунка UAC, что бы работало, либо включать в команду проверку/ настройку этого фактора.

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

А у тебя там права порезаны через политики? RunAs игнорирует GPO альтернативной учетной записи.
 
Последнее редактирование:

Wu-Tang

Эксперт клуба THG
Сообщения
193
Реакции
62
Баллы
508
@Кирилл,
я вот так прикинул, может не биться с этим моментом, тк там, где uac отключен полностью, нет, наверное, смысла запускать что-л от юзера...
А у тебя там права порезаны через политики? RunAs игнорирует GPO альтернативной учетной записи.
ключами:

Код:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"ConsentPromptBehaviorAdmin"=dword:00000000
"EnableLUA"=dword:00000000
"PromptOnSecureDesktop"=dword:00000000
 
Сверху Снизу