我想通過在 Intune 中使用腳本 powershell 在多個設備中安裝模塊 Sqlserver。它在少數設備上不起作用,因為它要求安裝包提供程式。所以我嘗試在我的腳本中添加這一步。
我創建了一個函式來查看包是否已經安裝,如果沒有安裝它。它必須是強制的并且不必請求用戶確認安裝。這是我的功能:
function Install-PackageProvider(
[string] [Parameter(Mandatory = $true)] $ModuleName
)
{
If(Get-PackageProvider| Where-Object {$_.Name -eq $ModuleName})
{
$Info = "The Package-Provider is already installed"
Write-Host $Info
}
else
{
Write-Host "We need to install the package provider. We start now"
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
}
}
不幸的是,它不適用于少數設備,我收到此錯誤訊息,其中無法識別與“名稱”對應的引數。我嘗試了一些我在互聯網上看到的東西。
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 ...
~~~~~
任何人都有想法并且可以幫助我。英語不是我的母語,希望我沒有犯太多錯誤
謝謝
uj5u.com熱心網友回復:
我會嘗試以下。它似乎對我有用
function Install-PackageProvider(
[string] [Parameter(Mandatory = $true)] $ModuleName
)
{ If(Get-PackageProvider| Where-Object {$_.Name -eq $ModuleName})
{
$Info = "The Package-Provider is already installed"
Write-Host $Info
}
else
{
Write-Host "We need to install the package provider. We start now"
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
PackageManagement\Install-PackageProvider -Name $ModuleName -Force
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/362439.html
