Как сделать ярлык powershell

Обновлено: 08.07.2024

Я немного потерян. Я хочу сценарий powershell, который создает ссылку, связанную с другим скриптом powershell. Этот ярлык должен иметь возможность запускаться как администратор, и цель должна выглядеть так. Я сделал это вручную, и это работает.

Цель: C:\system32\windowspowershell\v1.0\powershell.exe -executionpolicy bypass -noexit "TARGETPATH\test.ps1"

Это мой код, но аргументы появляются за целевым путем напротив.

Есть ли возможность заменить логотип по умолчанию на конкретный? т.е. один из powershell

Для создания экземпляра COM-объекта нужно указать его программный идентификатор (ProgID) в качестве значения параметра ComObject , например:

Перенаправив созданный объект по конвейеру на командлет Get-Member , можно увидеть список всех свойств и методов, имеющихся в COM-объекте:

Как же теперь воспользоваться методами данного COM-объекта? Для этого удобнее всего сохранить ссылку на объект в переменной, это позволит обращаться к нему в любое время до окончания сеанса работы в PowerShell.

Сохранение объектов в переменных

Оболочка PowerShell поддерживает работу с переменными, которые, по сути, являются именованными объектами. В переменной можно сохранить вывод любой допустимой команды PowerShell. Имена переменных всегда начинаются с знака доллара ( $ ).

Для сохранения в переменной ссылки на COM-объект нужно выполнить следующую команду:

Убедимся, что в переменной $Shell на самом деле хранится экземпляр COM-объекта с программным идентификатором WScript.Shell:

Пример: создание ярлыка на рабочем столе

С помощью COM-объекта WScript.Shell можно быстро создавать ярлыки для папок и файлов. Для примера мы создадим на рабочем столе активного пользователя ярлык PSHome.lnk для папки, в которой установлена оболочка PowerShell.

Сначала создадим экземпляр COM-объекта WScript.Shell и сохраним ссылку на него в переменной $Shell :

У данного объекта имеется метод CreateShortcut , в качестве параметра которого нужно указывать путь к создаваемому ярлыку. Путь к рабочему столу можно определить разными способами, например, с помощью переменной определенной в PowerShell переменной $Home , в которой хранится путь к личной папке активного пользователя:

По умолчанию содержимое рабочего стола хранится в подкаталоге "Рабочий стол" личной папки пользователя, поэтому для создания ярлыка выполним следующую команду:

Здесь нужно учесть, что для получения значения переменной (в нашем случае $Home) ее имя нужно указывать внутри двойных кавычек, а не в одинарных.

Посмотрим, какие свойства и методы имеет объект, сохраненный в переменной $lnk :

Для создания ярлыка на папку достаточно сохранить путь к ней в свойстве TargetPath и вызвать метод Save для сохранения ярлыка. Путь к домашней папке PowerShell хранится в специальной переменной $PSHome , поэтому выполняем следующие команды:

Пример: вывод текста в Microsoft Word

Ранее мы уже рассматривали сценарий WSH на языке VBScript, который управляет приложением Microsoft Word (см. листинг 7.12). Решим аналогичную задачу в PowerShell: запустим из оболочки Microsoft Word и напечатаем в нем строку текста.

Сделать это несложно. Сначала создаем экземпляр главного объекта сервера автоматизации Microsoft Word, который имеет программный идентификатор "Word.Application", и сохраняем ссылку на этот объект в переменной $word ::

Создаем новый документ (метод Add коллекции Documents ) и сохраняем ссылку на документ в переменной $doc :

Делаем окно с новым документом видимым:

Наконец, печатаем строку текста:

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

Методы статического класса также называются статическими. Для просмотра статических методов класса нужно передать имя этого класса (в квадратных скобках) по конвейеру командлету Get-Member с параметром Static :

Как мы видим, методы класса System.Math реализуют различные математические функции, их легко распознать по названию.

Для доступа к определенному статическому методу или свойству используются два идущих подряд двоеточия ( : :), а не точка ( .), как в обычных объектах. Например, для вычисления квадратного корня из числа (статического метода Sqrt ) и сохранения результата в переменную используется следующая конструкция:

Я имел в виду ответ номер три этот пост написать сценарий PowerShell, но он не работает.

он только печатает код в области вывода, но никогда не кажется полностью выполнить; ярлык не появляется на рабочем столе.

нужно позвонить Save метод объекта ярлыка для фактического сохранения ярлыка в виде файла.

  • все примеры кода вопрос, на который вы ссылаетесь
  • KB 244677 как создать ярлык на рабочем столе с хостом сценариев Windows
  • Руководство По Созданию Сценариев Microsoft Windows 2000. работа с Ярлыки

Если вы хотите автоматизировать и создать ярлыки, когда вы хотите, вот скрипт, который может помочь вам сделать это.

Среди особенностей и функций, которые мы находим в Windows 10, одним из наиболее часто используемых нами является контекстное меню, которое открывается, когда мы щелкаем правой кнопкой мыши на каком рабочем столе Windows. Отсюда у нас есть ярлыки для других приложений, чтобы работать с ними быстрее и эффективнее. В случае, если мы регулярно используем команду PowerShell, мы можем создать ярлык из этого меню, чтобы получить его быстрее.

Windows PowerShell - это мощный инструмент автоматизации, который является неотъемлемой частью Microsoft операционная система начиная с Windows XP. Он имеет множество полезных и скрытых функций, к которым можно легко получить доступ из контекстного меню, используя возможность открыть здесь PowerShell и изменить его на командную строку, гораздо более ограниченную и устаревшую. Для этого необходимо будет внести некоторые изменения в реестр Windows, как мы увидим ниже.

Добавить PowerShell в контекстное меню в Windows 10

Различные способы доступа к PowerShell

PowerShell - это утилита командной строки это основано на улучшенной и продвинутой версии традиционной командной строки. Эта утилита позволит нам выполнять различные объединения команд, называемые скриптами, тем самым облегчая создание, настройку и автоматизацию множества задач.

Если мы хотим получить доступ к Windows PowerShell, у нас есть разные способы сделать это, так что это может быть полностью личной задачей.

В дополнение к этим формам, которые обычно являются наиболее распространенными, мы также сможем открыть PowerShell с помощью контекстного меню Windows 10. Хотя это непростой или интуитивно понятный процесс, у нас есть возможность сделать это, внеся изменения в реестр. Таким же образом мы можем удалить его, если не хотим, чтобы он продолжал отображаться в контекстном меню.

Добавить Windows PowerShell в контекстное меню

Как мы уже отмечали ранее, Microsoft не упрощает использование ярлыка PowerShell в контекстном меню, поскольку у него нет интуитивно понятного и простого способа сделать это. Это потребует некоторых изменений в редакторе реестра Windows. Это то, что мы должны делать с большой осторожностью, и выполнять это только в том случае, если у нас есть определенная легкость при перемещении по редактору, поскольку любые неправильные изменения могут повлиять на стабильность системы.

HKEY_CLASSES_ROOT / Directory / Shell

Создайте новый ключ PowerShellDesktop

Registro y Shell Crear Valor

Редактор регистрации создает PowerShellDesktop

Создайте новый ключ с именем Command

C: / Windows / system32 / WindowsPowerShell / v1.0 / powershell.exe -NoExit -Command Set-Location -LiteralPath '%L'

Команда Editor de registro editar cadena

Здесь мы должны иметь в виду, что, если наша Windows не установлена ​​на диске C, мы должны соответствующим образом изменить путь. Точно так же, если у нас нет версии PowerShell v1.0, мы должны изменить этот номер на версию, которая у нас есть. Если мы хотим узнать версию PowerShell, мы должны посмотреть на нее в пути. В общем, если мы не решили установить другую версию, это нормально, что у нас есть v1.0.

Редактор регистрации Command datos de valor

C: / Windows / system32 / WindowsPowerShell / v1.0

После того, как все данные будут введены, нажмите OK для подтверждения, и изменения должны вступить в силу немедленно. Чтобы проверить это, нам просто нужно щелкнуть правой кнопкой мыши любую папку и выбрать команду Windows PowerShell. Затем окно PowerShell должно немедленно открыться и поместить нас в выбранную папку.

Удалите Windows PowerShell из контекстного меню

HKEY_CLASSES_ROOT / Directory / Shell

Читайте также: