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

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
ха, посидел покумекал, изменил команду запуска в runas.
Код:
[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\""

---------------------------------------

[HKEY_CLASSES_ROOT\Directory\Background\shell\cmd_menu]
"icon"="cmd.exe"
"MUIVerb"="Командная строка"
"SubCommands"="runas;runas_user"
на виртуалке стало запускаться и от админа и от юзера из нужной папки ))) на своей системе еще не тестил, где uac отрублен.

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

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418

regist

гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения
12,456
Реакции
6,033
Баллы
1,008
нашел решение с понижением прав на запуск,
Наверно имелось ввиду с повышением. А во вторых написанное там это по сути просто манифест для запуска файла и для этого не надо лезть в реестр, можно или в ресурсах файла поправить или рядом файл положить. Обсуждалось уже много раз тут.
 

regist

гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения
12,456
Реакции
6,033
Баллы
1,008
привет всем!
постоянно собираю или пишу сам какие-н твики, сегодня решил добавить cmd во все пкм, с выкидным меню, идея и ключи взяты с кибера, без пкм писал сам, решил потренироваться с контекстом в папках.
Код:
[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.exe"

---------------------------------------

[HKEY_CLASSES_ROOT\Directory\Background\shell\cmd_menu]
"icon"="cmd.exe"
"MUIVerb"="Командная строка"
"SubCommands"="runas;runas_user"
добавил в commandstore нужное, заделал ключ в background, строка появилась, меню есть, от юзера запускает из той папки в которой клацаешь, а от админа запускает, но переводит путь в system32.
сижу битый час и не въеду в чем косяк, тестирую на чистой оси на виртуалке.
а на моей системе, где отрублен uac и все такое, запускает из нужной папки, но по двум пунктам запускает от админа )))
Ву, я не понимаю, а чем тебя готовое решение от Бифидо не устараивает? Полезные твики реестра для удобства работы в Windows
 

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
Наверно имелось ввиду с повышением.
нет, именно с понижением, тк в системах, где uac отрублен, то обе строки запускаются от админа, те та, которая от юзера, запускается тоже от админа, а так не должно быть.
в дефолтной системе, где uac врублен, то все запускается как надо, те от админа и от юзера.
Ву, я не понимаю, а чем тебя готовое решение от Бифидо не устараивает?
крутую работу проделал bifido, почитал, изучил твики, но ответа по своему моменту не нашел.
все хорошо, но мне хочется решить именно задачу, которую я описываю, тем более решение с понижением прав есть от vovun, но как его прикрутить к запуску cmd, я пока не знаю.
 
Последнее редактирование:

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
сижу уже битый час, наткнулся на - Заставить программу для запуска * без * привилегий администратора или UAC? Bilee
понимаю, что лепить надо сюда:
Код:
[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"
в command, но как должен выглядеть синтаксис, знаний не хватает )))
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
Так может?

Код:
Windows Registry Editor Version 5.00

 ;Каскаданое меню Wu-Tang
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\CMD_Menu]
"MUIVerb"="Запустить командную строку"
"SubCommands"="runas;runas_user"
"Icon"="cmd.exe"
; "Position"="Bottom" - если надо поднять пункт меню
 
[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.exe"

;Пункт в каталогах
[HKEY_CLASSES_ROOT\Directory\Background\shell\cmd]
@="Командная строка"
"NoWorkingDirectory"=""
"Icon"="C:\\Windows\\system32\\cmd.exe,-0"

[HKEY_CLASSES_ROOT\Directory\Background\shell\cmd\command]
@="cmd.exe /s /k pushd \"%V\""

[HKEY_CLASSES_ROOT\Directory\Background\shell\runas]
@="Командная строка"
"NoWorkingDirectory"=""
"HasLUAShield"=""
"Icon"="C:\\Windows\\system32\\cmd.exe,-0"


[HKEY_CLASSES_ROOT\Directory\Background\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\""
 

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
1574865436463.png
Вот так на время твика только сделай
 

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
в моей компе - каскадное, и то и другое также запускаются от админа, те та, которая от юзера, запускается также от админа (как и было у меня)
в папкам просто пункт от админа.
права на shell поменять во всех ветках, directory/commandstore?
в commandstore права как у тебя:
в directory так:

ps не могу понять в чем причина не запуска от юзера, я уже тестил на 5-ти системах, на моем компе, ноуте и одной виртуалке, от юзера не запускается, на другой виртуалке и по удаленке у друга, запускается, везде одна учетка админская.
бред какой-то, полагаю, там где, не запускается, права везде максимальные, хотя у друга тоже полные полные права, но у него запускается.
 
Последнее редактирование:

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
я вот думаю, у меня на ветки реестра у группы пользователей значатся особые разрешения, а на виртулке, где твик работает, стоит чтение, может в этом собака порыта?


просто уже принципиально хочется понять этот момент.
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
А, емае, тебе понижение надо))
У меня где то флаги были, я утром гляну.
UAC то зря отключаете
 

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
P.S. а ты на вин 7 делаешь или старше?
 

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
А, емае, тебе понижение надо))
да что же вам все повышение мерещится )))
битый час пишу, что от юзера не запускается, только от админа )))
делаю для win7, но думаю эти ключи и на 8/10 будут работать.
мне причина не ясна, на разных системах разное поведение твика.
я пробовал флаги типа set __COMPAT_LAYER=RUNASINVOKER но она запускается с ошибкой, написанной в консольном окне, о недостатке памяти, что тоже занятно )))
 
Последнее редактирование:

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,159
Реакции
5,942
Баллы
718
А задача у тебя в чем состоит - запустить с пониженными правами даже если в системе uac отключён?
Попробуй psexec с ключом:
-l Run process as limited user (strips the Administrators group
and allows only privileges assigned to the Users group).
On Windows Vista the process runs with Low Integrity.
я пробовал флаги типа set __COMPAT_LAYER=RUNASINVOKER но она запускается с ошибкой, написанной в консольном окне, о недостатке памяти, что тоже занятно )))
не все программы, требующие повышения, смогут корректно работать в таком режиме
 

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
хотелось, чтобы да, и также хочется теперь еще понять, почему на моей системе никак не запускается от юзера.
я хочу это сделать только для запуска консоли.
ps не запускается там, где uac отключен, но я пробовал включать uac, там где запускает, но запускаться не перестало.

ха, я после включения uac не делал ребут и проверял, ничего не менялось, но после ребута то стало запускаться от юзера после включения uac, вот тебе и на, столько времени убил, а дело было в том, что я не думал на uac, тк не ребутился после внесения изменений:
Код:
; Выключить UAC
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"ConsentPromptBehaviorAdmin"=dword:00000000
"EnableLUA"=dword:00000000
"PromptOnSecureDesktop"=dword:00000000

; Включить UAC 
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"ConsentPromptBehaviorAdmin"=dword:00000005
"EnableLUA"=dword:00000001
"PromptOnSecureDesktop"=dword:00000001
теперь все ясно стало, надо решить запуск cmd от юзера в системах, где uac отключен.

кстати, спрошу в нагрузку.
при отключению uac через gui ключи в реестре имеют значения:
Код:
"ConsentPromptBehaviorAdmin"=dword:00000005
"EnableLUA"=dword:00000000
"PromptOnSecureDesktop"=dword:00000001
хотя твик для отключения базируется на 0 - 0 - 0
выходит отключение через контроль учетных записей не до конца отключает?
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
Попробуй делать старт с наименьшими привилегиями...хотя есть такая мысль, что если их контроль отключен - то и запускать их никак.
Если я все верно понял - ты запускаешь учетную запись с правами администратора, с отключением UAC.
Контроль привилегий, по сути, отсутствует.
Попробуй вот так:
runas /trustlevel:0x10000 cmd.exe

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

Wu-Tang

Эксперт клуба THG
Сообщения
181
Реакции
51
Баллы
418
ну да, админ, uaс отключен.
и этот вариант я пробовал, но запускается как-то странно, вроде с ограниченными, но от админа
то что предлагал vovun я не могу прикрутить в реестре, банально не знаю как, а если вручную, то cmd запускается с текстом о недостатке памяти, те тоже странный баг.
 

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
Ну так попробуй теперь выполнить операцию, требующую прав, через командную строку.
Например, в системный файл переименуй.
 

Кирилл

Команда форума
Администратор
Сообщения
13,941
Реакции
6,296
Баллы
993
Типа работает?
 
Сверху Снизу