YuS 2
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору farag Цитата: А как тогда, если у аргумента есть функции? | Не знаю, зачем там присутствует сознательное создание ситуации с неоднозначным выполнением функции, ибо непонятно для чего назначаются алиасы совпадающие с именами элементов массива параметров самой функции и при этом же, есть совпадения с условиями оператора переключателя... да и наличие нигде не задействованной переменной $link внутри выполняемых команд переключателя, которой присваиваются свойства .definition, тоже непонятно ... правда это уже немного про другое. Но если переписать твою функцию с циклом отсюда Цитата, то она могла бы быть такой: Код: function test { param ( [Parameter(Mandatory = $true)] [string[]] $Links ) switch ($Links) { ControlPanel { Set-Alias -Name ControlPanel -Value "Microsoft.Windows.ControlPanel" -Force $Link = (Get-Alias -Name 'ControlPanel').Definition (Get-StartApps | Where-Object -FilterScript {$_.AppID -eq $Alias:ControlPanel}).Name } DevicesPrinters { Set-Alias -Name Devices -Value "Microsoft.AutoGenerated.{7FF3FDB0-CFD9-F944-4722-A9E766EDE23F}" -Force $Link = (Get-Alias -Name 'DevicesPrinters').Definition (Get-StartApps | Where-Object -FilterScript {$_.AppID -eq $Alias:Devices}).Name } PowerShell { Set-Alias -Name PowerShell -Value "{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\WindowsPowerShell\v1.0\powershell.exe" -Force $Link = (Get-Alias -Name 'PowerShell').Definition (Get-StartApps | Where-Object -FilterScript {$_.AppID -eq $Alias:PowerShell}).Name } } } test -Links ControlPanel, DevicesPrinters | - все совпадения случайны, в том смысле, что проверка правильности выполняемых команд <action>, из оператора switch, лежит на составителе функции... как-то так. Цитата: То, что сверху, уже не актуально. Смотри ссылку ниже. | Думаешь, что желание разобрать чужой код на составляющие у меня перевесит мою лень? Особенно код в таком количестве, учитывая, что при этом о задаче в целом, не имеется ни малейшего представления... Ты слишком оптимистичен. |