Windows PowerShell is the new avatar of the Command Prompt with lots of new features and capabilities. With the Windows 10 Creators Update, Microsoft replaced CMD with PowerShell. If you are unable to find the option to launch the Command Prompt from the Power User Menu and the Context menu, there are a couple of ways to make things right. In this tutorial, see how we can replace PowerShell with Command Prompt in Windows 10 and Windows 11.
There are more than 18 ways to open the Command Prompt in Windows 10. However, we’ll discuss only 2 of them here. We’ll check out the easy way to replace PowerShell with Command Prompt from Windows settings. In case you want to learn how to open the Command Prompt instead of PowerShell in a folder, you can make changes to the Registry Editor to replace PowerShell with CMD in the Windows context menu.
Don’t Miss: How to Check MD5 Checksum and SHA Hash of a File in Windows
This tip to replace PowerShell with the Command Prompt in the Power User Menu works only in Windows 10. You can follow the quick steps given below to bring back the Command Prompt in the Power User Menu on your Windows PC.
- Click Start (Windows logo icon in the bottom-left corner of the screen) and choose Settings.
- Next, click Personalization. You can directly access the personalization menu by doing a right-click on the desktop screen and selecting the Personalize option.
- Now click Taskbar on the left panel in the Settings window.
- After that, click the toggle button below ‘Replace Command Prompt with Windows PowerShell in the menu when I right-click the start button or press Windows Logo Key + X‘ on the right panel.
Once you have done that the 2 options to open Powershell in the Power User Menu will be replaced by Command Prompt and Command Prompt (Admin) respectively as shown below.
2. Replace PowerShell with CMD in File Explorer
If you want to open Command Prompt instead of PowerShell in a folder or File Explorer, you’ll need to replace PowerShell with CMD in the right-click Context Menu on your Windows 10 or 11 PC. We can do some tweaks to the Registry Editor to make this happen. Let’s begin.
- Press the Windows Logo key on your keyboard, look for the Notepad++ app in the Start menu and open it.
- Now, copy the following code and paste it into the empty Notepad file.
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\cmdprompt] @="@shell32.dll,-8506" "Extended"="" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\Directory\shell\cmdprompt\command] @="cmd.exe /s /k pushd \"%V\"" [HKEY_CLASSES_ROOT\Directory\Background\shell\cmdprompt] @="@shell32.dll,-8506" "Extended"="" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\Directory\Background\shell\cmdprompt\command] @="cmd.exe /s /k pushd \"%V\"" [HKEY_CLASSES_ROOT\Drive\shell\cmdprompt] @="@shell32.dll,-8506" "Extended"="" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\Drive\shell\cmdprompt\command] @="cmd.exe /s /k pushd \"%V\""
- Click File and choose the Save As… option.
- When you click the Save As… option, you’ll be prompted to assign a file name and type. Click the File name section and type ‘cmdfix.reg‘ as the file name. Then click the drop-down icon in front of the Save as type box and select All Files. Finally, Save the file to your preferred location.
- Once you have saved the file, navigate to cmdfix.reg and double-click it. When prompted, choose Yes.
- Next, you’ll see a pop-up window asking if you want to add the new configuration to the registry. Choose Yes.
- The newly created cmdfix.reg will be added to the registry.
You have successfully replaced PowerShell with CMD in the Windows 10 or 11 right-click context menu. Do not forget to check out our detailed tutorial on customizing the Windows context menu. You should now be able to open the Command Prompt instead of PowerShell in a folder.
Anyway, if you want to undo the changes made by this registry editor tweak anytime later, just paste the following text into a new notepad file.
Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOT\Directory\shell\cmd2] [-HKEY_CLASSES_ROOT\Directory\Background\shell\cmd2] [-HKEY_CLASSES_ROOT\Drive\shell\cmd2] [-HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\cmd2]
Make sure you name this notepad file as ‘Defaultcmd.reg‘ and select ‘All Files‘ as the file type before saving it. Double-click the file, and select Yes. Don’t forget to restart your computer at this point.
Don’t Miss: 250+ Keyboard Shortcuts for Windows 10 and 11
3. Edit Registry Entries to Replace PowerShell with CMD
While the trick we mentioned above should work fine, there’s one more way you can use to replace PowerShell with Command Prompt in Windows 10 and 11. This method involves manually editing the registry entries.
- Click the Search icon and type “registry” in the text box and click Registry Editor.
- Alternatively, you can open the Run window by pressing Windows Logo Key + R, and type “regedit” to open Registry Editor.
- Now, navigate to HKEY_CLASSES_ROOT\Directory\shell\cmd.
- Right-click on the cmd folder and choose Permissions from the context menu.
- When a small window entitled Permissions for cmd pops up, click the Advanced button.
- The Advanced Security Settings window will appear. Click the Change option to change the permission settings for the Owner.
- In the Select User or Group window, click the Advanced button.
- In the window that pops up next, click the Find Now button. Then select your user group from the search results and click OK.
- When you return back to the Advanced Security Settings for cmd window, check the Replace owner on subcontainers and objects option. Then click Apply and OK respectively.
- Finally, you’ll return to the Permissions for cmd window from where you initially started. Now, select Administrators under Group or user names, and check the Allow box next to Full Control under Permissions for Administrators. Click the Apply button followed by OK.
- When you come back to HKEY_CLASSES_ROOT\Directory\shell\cmd path in the Registry Editor, right-click on the HideBasedOnVelocityId entry. Choose the Rename option.
- Rename the entry to ShowBasedOnVelocityId.
- As soon as the name of the DWORD entry is changed, PowerShell will be replaced by CMD in the right-click menu in Windows 10 or 11 but you will have to restart your PC first.
Done! Now, open a folder and press the Shift key + right-click. You should be able to open Command Prompt instead of PowerShell in a folder. Actually, you’ll have the option to open PowerShell and Command Prompt both in the context menu in the File Explorer.
In case you want to remove the Open PowerShell window here option from the File Explorer context menu do as directed below. The steps are almost the same as you went through a while ago to replace PowerShell with the Command Prompt in the right-click menu.
- Open Registry Editor and navigate to HKEY_CLASSES_ROOT\Directory\shell\PowerShell.
- Right-click on PowerShell and then select Permissions from the context menu.
- Now repeat Steps 5-10 from above.
- After that, right-click on ShowBasedOnVelocityId and rename it to HideBasedOnVelocityId.
- The Open Powershell window here option will be removed from the context menu.
- Reboot your Windows computer to make the changes you made take effect.
In case you want to replace the Command Prompt with PowerShell in the File Explorer right-click menu, follow the quick steps described below.
- Open the Registry Editor and navigate to HKEY_CLASSES_ROOT\Directory\shell\cmd.
- Right-click on ShowBasedOnVelocityld and rename it to HideBasedOnVelocityld.
- Now, navigate to HKEY_CLASSES_ROOT\Directory\shell\PowerShell, right-click on HideBasedOnVelocityld, and rename it to ShowBasedOnVelocityld.
- Finally, restart your PC.
I hope you were able to replace PowerShell with CMD in Windows 10 or 11 (or vice versa) using this tutorial. In case you get stuck at any step and need help or just have something to share about the topic, feel free to drop us a comment.
Also, if you own an old laptop or PC that doesn’t support the Windows 11 upgrade the official way, read our tutorial about installing Windows 11 on unsupported hardware (CPU or TPM).
Read Next: How to Enable God Mode on Windows 10 & 11
Валентина: после последних обновлений почему-то в контекстных меню пропала возможность быстрого доступа и запуска Windows PowerShell (имею в виду Win X). У меня такой вопрос: есть ли какой-то не очень сложный способ поменять командную строку на более привычную для меня PowerShell: Вообще, где отыскать такие настройки, или опции…
Иногда приключаются некоторые закавыки, которые нарушают привычную работу за компьютером. Частенько все это происходит, конечно же, и из-за обновлений, либо (что тоже нередко) по вине самого пользователя (когда тот изменил настройки ОС и подзабыл о них…).
Сегодня доподлинно разберемся, каким образом заменить Windows PowerShell на Командную строку и наоборот?
-
заменить командную строку на PowerShell и наоборот — Windows 10
-
как заменить Windows PowerShell на Командную строку (cmd)
-
заменяем командную строку на PowerShell в Windows 10
Одно из встроенных средств Виндовс (разработка Microsoft) с открытым исходным кодом. Оболочка с интерфейсом командной строки (CMD), работающая по сопутствующему языку сценариев. На конференции разработчиков в сентябре 2003 года язык впервые был представлен общественности.
Аналог Командной строки — более современного формата.
Изначально средство (или командный интерпретатор) разрабатывалось как компонент Windows и мело название Windows PowerShell.
вернуться к оглавлению ↑
заменить командную строку на PowerShell и наоборот — Windows 10
Если у нас активна оболочка PowerShell, тогда дела в контекстных меню будут обстоять так, как показано на картинке ниже, а значит запустить полезную утилиту PowerShell будет очень просто:
а) запустить PowerShell возможно так (НЕ от администратора) — нажимаем кнопку на клавиатуре Shift и на пустом месте рабочего стола вызываем контекстное меню (клик правой клавишей мыши).
либо: кликаем одновременно по кнопкам Win + X (коричневая стрелка на картинке ниже) (полезные горячие клавиши
В статье будет дан список наиболее распространённых комбинаций клавиш компьютера (так называемых — Горячих клавиш) — те используются для быстрого доступа к определённым инструментам той или другой системной программы, да и самой Виндовс. Также рассмотрим важные запросы (команды) к ОС Windows через Командную строку для более эффективной работы на компьютере).
Откроется, такое меню (его еще называют Win X). Как видим, в опциях есть два варианта запустить, в данном случае, Windows PowerShell — стандартный запуск, и от имени Администратора, что в большинстве случаев предпочтительнее…
вернуться к оглавлению ↑
как заменить Windows PowerShell на Командную строку (cmd)
Чтоб заменить в контекстном меню рабочего стола (и при горячем клике Win + X) на Командную строку (cmd) поступаем таким нехитрым образом:
а) наводим курсор в трее (панель инструментов) на пустое место /коричневая стрелка/и нажимаем правую клавишу мыши…
…откроется такое вспомогательное меню Панели инструментов):
Переходим в меню Параметры, а именно в этом случае войдем в нужный нам конкретный раздел опций Параметры панели задач.
Запустится консоль Параметры. Что нам в нем нужно поправить…
…только и останется сделать, чтобы изменить оболочку Windows PowerShell на Командную строку (либо наоборот), так это то, что перевести радиокнопку в требуемое состояние: вправо или влево (на картинке выше обведено).
Например, мы хотим, чтоб обновленная оболочка Windows PowerShell в контекстных меню (для быстрого запуска) была заменена на Командную строку (cmd), переводим кнопку Влево (не в активное состояние), т.е. отключаем PowerShell.
Получится такая картинка…
вернуться к оглавлению ↑
заменяем командную строку на PowerShell в Windows 10
…ну и как понимаете, чтобы, соответственно, заменить командную строку на PowerShell в Windows 10 потребуется совершить все описанные шаги выше — как говорится, от обратного.
как эпилог высказанному:
Теперь вы можете работать с Командной строкой прямо из контекстных меню: Win + X или меню рабочего стола. А уж с каким из инструментов ОС Windows (PowerShell или командной строкой) предпочтительнее для вас работать, придется выбирать лично!.. Советы, в данном случае, излишни.
Оба инструмента призваны решать по сути одни и те же задачи. PowerShell считается наиболее продвинутым, современным, а потому несколько обширнее возможности.
Путь до необходимых опций: Win + I / Параметры / Персонализация / Панель задач
Напоминаю, для большинства запросов (команд) правильнее всего запускать Командную строку (да и Windows PowerShell) от имени Администратора! НЕ забывайте..!
Желаю вам всяческих успехов..! и, конечно же, читайте наш сайт Комплитра.
Если что-то не ясно и остались вопросы, делитесь ими в комментариях…
все статьи: Сергей Кролл ATs владелец, автор cайта COMPLITRA.RU
…веб разработчик студии ATs media — запросто с WordPress
занимаюсь с 2007-года веб разработкой — преимущественно работаю с WordPress в студии ATs media
Переустановил Windows и пропала командная строка из контекстного меню.
SHIFT+Right Button тоже ничего не дает, там только PowerShell, как его заменить?
задан 16 мая 2017 в 23:06
1
1) Добавление cmd
в контекстное меню (оригинальная cтатья)
-
Нажмите клавиши Win + R и введите
regedit
для запуска редактора реестра. -
Перейдите к разделу реестра
HKEY_CLASSES_ROOT\Directrory\shell\cmd
, нажмите правой кнопкой мыши по имени раздела и выберите пункт меню«Разрешения»
.
- В следующем окне нажмите кнопку Дополнительно.
- Нажмите Изменить рядом с пунктом
«Владелец»
.
- В поле
«Введите имена выбираемых объектов»
введите имя вашего пользователя и нажмите Проверить имена, а затем — Ок. Примечание: если используется учетная записьМайкрософт
, введите адрес электронной почты вместо имени пользователя.
- Отметьте пункт
«Заменить владельца подконтейнеров и объектов»
и«Заменить все записи разрешений дочернего объекта»
, затем нажмите Ок и подтвердите действие.
- Вы вернетесь в окно параметров безопасности раздела реестра, в нем выберите пункт
«Администраторы»
и установите отметку«Полный доступ»
, нажмите Ок.
- Вернувшись в редактор реестра, нажмите по значению
HideBasedOnVelocityId
(в правой части редактора реестра) правой кнопкой мыши и выберите пункт«Удалить»
.
- Повторите шаги
2-8
для разделовHKEY_CLASSES_ROOT\Directrory\Background\ shell\cmd
иHKEY_CLASSES_ROOT\Drive\shell\cmd
Результат при shift + right click`:
2) Замена PowerShell
в win + x меню
- Откройте контекстное меню на панели задач и выберите пункт
Параметры панели задач
- В появившемся меню отключите пункт
Заменить командную строку оболочкой Windows PowerShell...
Результат при win + x:
ответ дан 17 мая 2017 в 0:46
Egor TrutnevEgor Trutnev
1,20915 серебряных знаков32 бронзовых знака
1
В операционной системе Windows 10 многие пользователи предпочитают использовать Powershell (Поуэршелл) вместо обычной командной строки. Однако, если вы не удовлетворены функциональностью Powershell и предпочитаете использовать стандартную командную строку, в этой статье мы расскажем вам, как заменить Powershell на командную строку в Windows 10.
Замена Powershell на командную строку несложна и займет всего несколько шагов. Прежде всего, откройте Пуск и найдите приложение «Командная строка» (Command Prompt) в списке программ. Вместо поиска в Пуске, вы также можете воспользоваться сочетанием клавиш Win + R и ввести «cmd» в поле выполнения. Убедитесь, что у вас есть права администратора для проведения этих действий.
Когда вы откроете командную строку, вам может потребоваться изменить некоторые настройки, чтобы она стала вашим основным инструментом для взаимодействия с операционной системой Windows 10. Вы можете изменить шрифт, цвета, размеры окна и другие параметры через правый клик на заголовке окна командной строки и выбор пункта «Свойства» (Properties).
Содержание
- Почему стоит использовать командную строку вместо Powershell?
- Шаги по замене Powershell на командную строку в Windows 10
- Преимущества использования командной строки в Windows 10
Почему стоит использовать командную строку вместо Powershell?
Хотя Powershell предлагает мощные возможности для автоматизации задач и управления системой в операционной системе Windows, командная строка все еще остается полезным инструментом для выполнения быстрых и простых операций. Вот несколько причин, почему стоит использовать командную строку:
- Простота использования: Командная строка имеет простой и интуитивно понятный синтаксис, что делает ее доступной даже для новичков. Она не требует изучения сложных командлетов и сценариев, как Powershell.
- Большой выбор инструментов: Командная строка предлагает широкий спектр утилит и команд, разработанных для выполнения различных задач. Вам не нужно искать или устанавливать дополнительные модули или скрипты, как в случае с Powershell.
- Быстрые операции: Если вам нужно выполнить быстрое действие, командная строка может быть более эффективным выбором. Она работает непосредственно с операционной системой, что делает ее более быстрой в выполнении задач, чем Powershell.
- Поддержка сторонних программ: Многие сторонние программы и инструменты предоставляют командную строку для работы с ними, что позволяет автоматизировать процессы и упростить взаимодействие с ними.
- Понятность вывода: Командная строка предоставляет простой и понятный вывод операций, что делает ее легким для чтения и понимания. Powershell, с другой стороны, может выводить сложные объекты, требующие обработки для получения нужной информации.
Шаги по замене Powershell на командную строку в Windows 10
Если вы предпочитаете использовать командную строку вместо Powershell в операционной системе Windows 10, вы можете следовать этим простым инструкциям для замены.
1. Откройте меню «Пуск» и найдите «Командная строка» среди приложений. Нажмите на нее, чтобы открыть командную строку.
2. Щелкните правой кнопкой мыши на значок «Пуск» в левом нижнем углу экрана и выберите «Выполнить». Введите «cmd» и нажмите клавишу Enter, чтобы открыть командную строку.
3. Если вы предпочитаете использовать сочетание клавиш, нажмите клавишу Win + X на клавиатуре и выберите «Командная строка» или «Командная строка (администратор)» из выпадающего меню.
4. Если вы хотите настроить параметры командной строки, щелкните правой кнопкой мыши на панели задач и выберите «Свойства». В появившемся окне выберите вкладку «Параметры» и внесите нужные изменения.
5. После открытия командной строки вы можете использовать все команды, которые вы обычно используете в Powershell. Для более подробной информации о командах и их использовании вы можете обратиться к документации Windows или воспользоваться интернет-ресурсами.
6. Если вам нужно временно переключиться между Powershell и командной строкой, вы можете использовать сочетание клавиш Ctrl + Shift + Esc, чтобы открыть Диспетчер задач, а затем выберите желаемую командную строку из списка процессов.
Теперь вы знаете, как заменить Powershell на командную строку в Windows 10. Вы можете продолжать использовать командную строку для выполнения различных задач и команд на вашем компьютере.
Преимущества использования командной строки в Windows 10
Командная строка в Windows 10 предоставляет множество преимуществ, которые делают ее полезным инструментом для выполнения различных задач. Вот несколько основных преимуществ использования командной строки:
- Большая гибкость: Командная строка позволяет выполнять множество операций и настроек, которые могут быть недоступны в графическом интерфейсе Windows. Это позволяет пользователю иметь большую гибкость и контроль над системой.
- Автоматизация задач: Командная строка предлагает возможность автоматизировать выполнение рутиных задач. Пользователь может создать скрипты и выполнять их с помощью командной строки, что позволяет сэкономить время и упростить процесс работы.
- Быстрый доступ: Командная строка представляет собой быстрый и эффективный способ получить доступ к различным функциональным возможностям Windows. Пользователь может сразу перейти к нужной функции, не тратя время на поиск ее в графическом интерфейсе.
- Работа в режиме администратора: Командная строка позволяет пользователю запускать команды с повышенными правами, что дает возможность выполнять операции, требующие административных прав. Это особенно полезно при настройке и управлении системой.
- Запись и отладка скриптов: Командная строка предоставляет средства для записи и отладки скриптов, что позволяет пользователям создавать собственные сценарии и проверять их работу перед выполнением.
В целом, командная строка является мощным инструментом для работы с операционной системой Windows 10. В дополнение к графическому интерфейсу, она предлагает пользователю дополнительные возможности и гибкость, что делает ее полезной для разнообразных задач и сценариев работы.
Here’s a script that will add the Open command window here
to Explorer’s right-click context menu. The script uses RunAsTI.bat to add & remove the relevant registry values as the TrustedInstaller
account. This obviates changing the registry keys’ permissions. Run it from an elevated command window. No restart of anything required to see the change.
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
OPENFILES.EXE 1>NUL 2>&1
IF ERRORLEVEL 1 ECHO You need to run this script from an elevated command prompt. Exiting. & EXIT /B 1
TITLE Configure CMD/Powershell for the Explorer SHIFT+RIGHTCLICK menu
SET REGKEYS=HKCR\Drive\shell HKCR\Directory\shell HKCR\Directory\Background\shell
FOR %%I IN (%REGKEYS%) DO SET CMD_STRING=!CMD_STRING!REG ADD %%I\cmd /v ShowBasedOnVelocityId /t REG_DWORD /d 6527944 /f ^& REG DELETE %%I\cmd /v HideBasedOnVelocityId /f ^&
CALL :RunAsTI CMD /C "!CMD_STRING:~0,-3!"
REM https://github.com/AveYo/LeanAndMean
#:RunAsTI snippet to run as TI/System, with innovative HKCU load, ownership privileges, high priority, and explorer support
set ^ #=& set "0=%~f0"& set 1=%*& powershell -c iex(([io.file]::ReadAllText($env:0)-split'#\:RunAsTI .*')[1])& exit /b
function RunAsTI ($cmd,$arg) { $id='RunAsTI'; $key="Registry::HKU\$(((whoami /user)-split' ')[-1])\Volatile Environment"; $code=@'
$I=[int32]; $M=$I.module.gettype("System.Runtime.Interop`Services.Mar`shal"); $P=$I.module.gettype("System.Int`Ptr"); $S=[string]
$D=@(); $T=@(); $DM=[AppDomain]::CurrentDomain."DefineDynami`cAssembly"(1,1)."DefineDynami`cModule"(1); $Z=[uintptr]::size
0..5|% {$D += $DM."Defin`eType"("AveYo_$_",1179913,[ValueType])}; $D += [uintptr]; 4..6|% {$D += $D[$_]."MakeByR`efType"()}
$F='kernel','advapi','advapi', ($S,$S,$I,$I,$I,$I,$I,$S,$D[7],$D[8]), ([uintptr],$S,$I,$I,$D[9]),([uintptr],$S,$I,$I,[byte[]],$I)
0..2|% {$9=$D[0]."DefinePInvok`eMethod"(('CreateProcess','RegOpenKeyEx','RegSetValueEx')[$_],$F[$_]+'32',8214,1,$S,$F[$_+3],1,4)}
$DF=($P,$I,$P),($I,$I,$I,$I,$P,$D[1]),($I,$S,$S,$S,$I,$I,$I,$I,$I,$I,$I,$I,[int16],[int16],$P,$P,$P,$P),($D[3],$P),($P,$P,$I,$I)
1..5|% {$k=$_; $n=1; $DF[$_-1]|% {$9=$D[$k]."Defin`eField"('f' + $n++, $_, 6)}}; 0..5|% {$T += $D[$_]."Creat`eType"()}
0..5|% {nv "A$_" ([Activator]::CreateInstance($T[$_])) -fo}; function F ($1,$2) {$T[0]."G`etMethod"($1).invoke(0,$2)}
$TI=(whoami /groups)-like'*1-16-16384*'; $As=0; if(!$cmd) {$cmd='control';$arg='admintools'}; if ($cmd-eq'This PC'){$cmd='file:'}
if (!$TI) {'TrustedInstaller','lsass','winlogon'|% {if (!$As) {$9=sc.exe start $_; $As=@(get-process -name $_ -ea 0|% {$_})[0]}}
function M ($1,$2,$3) {$M."G`etMethod"($1,[type[]]$2).invoke(0,$3)}; $H=@(); $Z,(4*$Z+16)|% {$H += M "AllocHG`lobal" $I $_}
M "WriteInt`Ptr" ($P,$P) ($H[0],$As.Handle); $A1.f1=131072; $A1.f2=$Z; $A1.f3=$H[0]; $A2.f1=1; $A2.f2=1; $A2.f3=1; $A2.f4=1
$A2.f6=$A1; $A3.f1=10*$Z+32; $A4.f1=$A3; $A4.f2=$H[1]; M "StructureTo`Ptr" ($D[2],$P,[boolean]) (($A2 -as $D[2]),$A4.f2,$false)
$Run=@($null, "powershell -win 1 -nop -c iex `$env:R; # $id", 0, 0, 0, 0x0E080600, 0, $null, ($A4 -as $T[4]), ($A5 -as $T[5]))
F 'CreateProcess' $Run; return}; $env:R=''; rp $key $id -force; $priv=[diagnostics.process]."GetM`ember"('SetPrivilege',42)[0]
'SeSecurityPrivilege','SeTakeOwnershipPrivilege','SeBackupPrivilege','SeRestorePrivilege' |% {$priv.Invoke($null, @("$_",2))}
$HKU=[uintptr][uint32]2147483651; $NT='S-1-5-18'; $reg=($HKU,$NT,8,2,($HKU -as $D[9])); F 'RegOpenKeyEx' $reg; $LNK=$reg[4]
function L ($1,$2,$3) {sp 'HKLM:\Software\Classes\AppID\{CDCBCFCA-3CDC-436f-A4E2-0E02075250C2}' 'RunAs' $3 -force -ea 0
$b=[Text.Encoding]::Unicode.GetBytes("\Registry\User\$1"); F 'RegSetValueEx' @($2,'SymbolicLinkValue',0,6,[byte[]]$b,$b.Length)}
function Q {[int](gwmi win32_process -filter 'name="explorer.exe"'|?{$_.getownersid().sid-eq$NT}|select -last 1).ProcessId}
$11bug=($((gwmi Win32_OperatingSystem).BuildNumber)-eq'22000')-AND(($cmd-eq'file:')-OR(test-path -lit $cmd -PathType Container))
if ($11bug) {'System.Windows.Forms','Microsoft.VisualBasic' |% {[Reflection.Assembly]::LoadWithPartialName("'$_")}}
if ($11bug) {$path=$path='^(l)'+$($cmd -replace '([\+\^\%\~\(\)\[\]])','{$1}')+'{ENTER}'; $cmd='control.exe'; $arg='admintools'}
L ($key-split'\\')[1] $LNK ''; $R=[diagnostics.process]::start($cmd,$arg); if ($R) {$R.PriorityClass='High'; $R.WaitForExit()}
if ($11bug) {$w=0; do {if($w-gt40){break}; sleep -mi 250;$w++} until (Q); [Microsoft.VisualBasic.Interaction]::AppActivate($(Q))}
if ($11bug) {[Windows.Forms.SendKeys]::SendWait($path)}; do {sleep 7} while(Q); L '.Default' $LNK 'Interactive User'
'@; $V='';'cmd','arg','id','key'|%{$V+="`n`$$_='$($(gv $_ -val)-replace"'","''")';"}; sp $key $id $($V,$code) -type 7 -force -ea 0
start powershell -args "-win 1 -nop -c `n$V `$env:R=(gi `$key -ea 0).getvalue(`$id)-join''; iex `$env:R" -verb runas
}; $A=$env:1-split'"([^"]+)"|([^ ]+)',2|%{$_.Trim(' "')}; RunAsTI $A[1] $A[2]; #:RunAsTI lean & mean snippet by AveYo, 2022.01.28
If you want to replace the Open PowerShell window here
option with Open command window here
, or you want to restore the default Open PowerShell window here
option, having previously changed it, you can use an enhanced version of the script.
Note a few benign things that will occur when you run either version of the script:
- You may see a
The system cannot find the drive specified.
message in your CMD window - You’ll probably see a few
REG
errors in the child CMD window that is created after running the script - Once the script has completed you’ll see a
Control Panel\All Control Panel Items\Administrative Tools
window. This can be safely closed, as it is just a side-effect of utilising theRunAsTI
snippet