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

Может относиться для любой версии Windows
ха, посидел покумекал, изменил команду запуска в 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 отрублен.

проверил на основной, а там обе запускаются от админа, те пользователя запускается, как от админа.
вот уже мыслей нет (((
 
Последнее редактирование:
нашел решение с понижением прав на запуск,
Наверно имелось ввиду с повышением. А во вторых написанное там это по сути просто манифест для запуска файла и для этого не надо лезть в реестр, можно или в ресурсах файла поправить или рядом файл положить. Обсуждалось уже много раз тут.
 
привет всем!
постоянно собираю или пишу сам какие-н твики, сегодня решил добавить 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
 
Наверно имелось ввиду с повышением.
нет, именно с понижением, тк в системах, где uac отрублен, то обе строки запускаются от админа, те та, которая от юзера, запускается тоже от админа, а так не должно быть.
в дефолтной системе, где uac врублен, то все запускается как надо, те от админа и от юзера.
Ву, я не понимаю, а чем тебя готовое решение от Бифидо не устараивает?
крутую работу проделал bifido, почитал, изучил твики, но ответа по своему моменту не нашел.
все хорошо, но мне хочется решить именно задачу, которую я описываю, тем более решение с понижением прав есть от vovun, но как его прикрутить к запуску cmd, я пока не знаю.
 
Последнее редактирование:
сижу уже битый час, наткнулся на - Заставить программу для запуска * без * привилегий администратора или 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, но как должен выглядеть синтаксис, знаний не хватает )))
 
Последнее редактирование:
Так может?

Код:
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\""
 
1574865436463.png

Вот так на время твика только сделай
 
в моей компе - каскадное, и то и другое также запускаются от админа, те та, которая от юзера, запускается также от админа (как и было у меня)
в папкам просто пункт от админа.
права на shell поменять во всех ветках, directory/commandstore?
в commandstore права как у тебя:
в directory так:

ps не могу понять в чем причина не запуска от юзера, я уже тестил на 5-ти системах, на моем компе, ноуте и одной виртуалке, от юзера не запускается, на другой виртуалке и по удаленке у друга, запускается, везде одна учетка админская.
бред какой-то, полагаю, там где, не запускается, права везде максимальные, хотя у друга тоже полные полные права, но у него запускается.
 
Последнее редактирование:
я вот думаю, у меня на ветки реестра у группы пользователей значатся особые разрешения, а на виртулке, где твик работает, стоит чтение, может в этом собака порыта?
просто уже принципиально хочется понять этот момент.
 
Последнее редактирование:
А, емае, тебе понижение надо))
У меня где то флаги были, я утром гляну.
UAC то зря отключаете
 
А, емае, тебе понижение надо))
да что же вам все повышение мерещится )))
битый час пишу, что от юзера не запускается, только от админа )))
делаю для win7, но думаю эти ключи и на 8/10 будут работать.
мне причина не ясна, на разных системах разное поведение твика.
я пробовал флаги типа set __COMPAT_LAYER=RUNASINVOKER но она запускается с ошибкой, написанной в консольном окне, о недостатке памяти, что тоже занятно )))
 
Последнее редактирование:
А задача у тебя в чем состоит - запустить с пониженными правами даже если в системе 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 но она запускается с ошибкой, написанной в консольном окне, о недостатке памяти, что тоже занятно )))
не все программы, требующие повышения, смогут корректно работать в таком режиме
 
хотелось, чтобы да, и также хочется теперь еще понять, почему на моей системе никак не запускается от юзера.
я хочу это сделать только для запуска консоли.
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
выходит отключение через контроль учетных записей не до конца отключает?
 
Последнее редактирование:
Попробуй делать старт с наименьшими привилегиями...хотя есть такая мысль, что если их контроль отключен - то и запускать их никак.
Если я все верно понял - ты запускаешь учетную запись с правами администратора, с отключением UAC.
Контроль привилегий, по сути, отсутствует.
Попробуй вот так:
runas /trustlevel:0x10000 cmd.exe

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