6

Прочитав ответ, я узнал, что в некоторых папках есть особенность

USERPROFILE AKA C:\Users\Steven
SystemRoot  AKA C:\Windows

Из поля Run вы можете получить доступ к любым их подпапкам. Например, при вводе Documents появится C:\Users\Steven\Documents . Есть ли в других папках эта функция или ее можно добавить в папку?

3 ответа3

3

Как сказал Аракел, здесь есть две несвязанные особенности:

  1. Переменные среды, которые используются как %variable% , например %USERPROFILE%
  2. Команды, которые вводятся без %...% , например, documents .

На самом деле, первые - это просто макросы, которые имеют значения. Синтаксис %...% просто преобразует имя переменной в текст, и этот текст затем выполняется так, как если бы он был введен в поле «Выполнить».

Введенный текст сначала ищется в папках, указанных переменной среды PATH и в %USERPROFILE% . В этом случае весь введенный текст должен совпадать с именем папки. Примерами здесь являются "документы" для C:\Users\<user>\Documents или "видео" для C:\Users\<user>\Videos .

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

Если введенное имя команды не совпадает с именем папки, Windows попытается найти исполняемый файл в ПУТИ с таким точным именем. Если у команды нет суффикса, Windows попытается использовать все исполняемые суффиксы, такие как .exe или .bat (и некоторые другие). Практически сотни имен команд могут быть введены таким образом.

Например, при вводе calc будет запущен калькулятор Windows, который является исполняемым файлом C:\Windows\System32\calc.exe , поскольку C:\Windows\System32 находится в ПУТИ.


Можно создать свои собственные команды Run следующим образом:

  1. Win+R, чтобы открыть диалоговое окно «Выполнить»
  2. Введите %windir% чтобы открыть каталог Windows
  3. Alt+F W S, чтобы открыть меню «Файл», выбрать пункт «Новый», затем пункт «Ярлык»
  4. Пройдите мастер, чтобы создать ярлык для нужной программы или папки.
  5. Имя, которое вы даете ярлыку, - это то, что вы введете в поле «Выполнить», чтобы запустить программу.

Другой способ осуществляется через реестр (не рекомендуется). Microsoft называет это регистрацией приложений.

  1. Запустите Regedit и перейдите к следующему ключу:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
    
  2. Щелкните правой кнопкой мыши по ключу « App Paths к приложениям» и выберите команду «Создать / ключ».

  3. Дайте новому ключу имя из 2-8 символов, а затем .exe
  4. Измените значение, если элемент (Default) на полный путь к программе.

Например, этот пример файла реестра позволяет одному типу, ie Е. В поле «Выполнить», открыть Internet Explorer:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ie.exe]
@="C:\\Program Files\\Internet Explorer\\iexplore.exe"
2

Окно запуска Windows пытается вызвать оболочку.Метод ShellExecute (операция по умолчанию зарегистрированного типа файла) для файла, указанного в тексте в поле ввода, а именно в текущем каталоге, который является %USERPROFILE% !

Предположим, что мы пишем MyLoc Sets и нажимаем Enter .

Сначала слово MyLoc должно быть командой. Оболочка ищет исполняемый вариант, например, MyLoc.com , MyLoc.exe , MyLoc.bat , MyLoc.cmd , ... в текущем каталоге, затем в каталогах, указанных переменной среды %PATH% , затем для \SOFTWARE \ Раздел реестра \SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Myloc.exe HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE . В крайнем случае, оболочка ищет папку MyLoc Sets в тех же местах (кроме реестра). Ошибка файла не найдена ...

А теперь попробуйте Local Settings: не нашел исполняемый файл с именем Local , но нашел папку с этим именем в %USERPROFILE% ! Таким образом, поскольку папка имеет зарегистрированный тип файла и операцию по умолчанию для папки, которая называется « Исследовать », то ее можно выполнить методом ShellExecute ...

0

кажется, что окно запуска является просто графической версией команды start со значением по умолчанию /d %userprofile% которое задает путь к начальному каталогу

как и любая другая команда, она реагирует на специальные переменные среды %path% , %pathext% т. д.

кроме того, он понимает шаблон для прямого открытия веб-страниц, например, Ctrl+R (или start). www.superuser.com открывает веб-сайт с приложением веб-браузера по умолчанию, так как он знает, что аргумент url на этот раз

Интересная часть этих переменных окружения - это порядок элементов в списке, который они содержат, так как он важен для установки приоритета поиска и важен при поиске одноименных файлов или каталогов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .