Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Топ:
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Эволюция кровеносной системы позвоночных животных: Биологическая эволюция – необратимый процесс исторического развития живой природы...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов...
Интересное:
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Дисциплины:
2022-10-28 | 25 |
5.00
из
|
Заказать работу |
|
|
Одной из функций, быстро выполняемых с помощью СОМ-объектов, является создание ярлыков. Допустим, на рабочем столе требуется создать ярлык для корневой папки Windows PowerShell. Сначала необходимо создать ссылку на объект WScript.Shell и сохранить ее в переменной $WshShell:
$WshShell = New-Object -ComObject WScript.Shell |
Командлет Get-Member работает и с СОМ-объектами, поэтому элементы объекта можно исследовать, если ввести следующее:
PS> $WshShell | Get-Member TypeName: System.__ComObject#{41904400-be18-11d3-a28b-00104bd35090} Name MemberType Definition ---- ---------- ---------- AppActivate Method bool AppActivate (Variant, Va... CreateShortcut Method IDispatch CreateShortcut (str... ... |
Примечание
У командлета Get-Member имеется необязательный параметр InputObject, который можно использовать вместо конвейеризации для обеспечения входных данных для командлета Get-Member. В примере выше при использовании команды Get-Member -InputObject $WshShell выводимые данные были бы абсолютно такими же. При использовании параметра InputObject командлет обрабатывает свои аргументы как одно целое. Это означает, что если в переменной содержится несколько объектов, командлет Get-Member обрабатывает их как массив объектов. Например:
PS> $a = 1,2,"three"
PS> Get-Member -InputObject $a
TypeName: System.Object[]
Name MemberType Definition
---- ---------- ----------
Count AliasProperty Count = Length
...
Метод WScript.Shell CreateShortcut допускает использование одного аргумента — пути к создаваемому файлу ярлыка. Можно указать полный путь к рабочему столу, но существует и более простой способ. Рабочий стол обычно представлен папкой с именем Desktop внутри домашней папки текущего пользователя. В Windows PowerShell имеется переменная $Home, в которой содержится путь к этой домашней папке. Таким образом, путь к домашней папке может быть задан указанием этой переменной, после чего нужно ввести только имя папки Desktop и имя создаваемого ярлыка:
|
$lnk = $WshShell.CreateShortcut("$Home\Desktop\PSHome.lnk") |
Примечание
Если похожая на переменную строка заключена в двойные кавычки, Windows PowerShell пытается заменить ее подходящим значением. При использовании одиночных кавычек значение переменной не подставляется. Для сравнения попробуйте ввести следующие команды:
PS> "$Home\Desktop\PSHome.lnk"
C:\Documents and Settings\aka\Desktop\PSHome.lnk
PS> '$Home\Desktop\PSHome.lnk'
$Home\Desktop\PSHome.lnk
Итак, в переменной $lnk теперь хранится новая ссылка-ярлык. Чтобы просмотреть элементы переменной, ее можно передать по конвейеру командлету Get-Member. Выводимые данные (см. ниже) показывают все элементы, необходимые, чтобы завершить создание ярлыка:
PS> $lnk | Get-Member
TypeName: System.__ComObject#{f935dc23-1cf0-11d0-adb9-00c04fd58a0b}
Name MemberType Definition
---- ---------- ----------
...
Save Method void Save ()
...
TargetPath Property string TargetPath () {get} {set}
...
Осталось определить свойство TargetPath, указывающее путь к папке Windows PowerShell, и вызвать метод Save, чтобы сохранить ярлык $lnk. Путь к папке Windows PowerShell хранится в переменной $PSHome, поэтому свойство TargetPath можно задать следующим образом:
$lnk.TargetPath = $PSHome
$lnk.Save()
|
|
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!