Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Description
Cet exemple montre comment utiliser la MsiPackage
ressource pour vérifier qu’un package est installé.
Avec l’option Vérifier définie Present
sur , ProductID{DEADBEEF-80C6-41E6-A1B9-8BDB8A05027F}
définie sur , et Chemin d’accès défini https://contoso.com/example.msi
sur , la ressource installe le example.msi
package s’il n’est pas déjà installé.
Si le package n’est pas installé, la ressource le télécharge https://contoso.com/example.msi
lorsque la ressource applique l’état souhaité. Si le téléchargement échoue, la ressource lève une exception.
Avec Invoke-DscResource
Ce script montre comment utiliser la MsiPackage
ressource avec l’applet Invoke-DscResource
de commande pour vérifier qu’un package sur un URI web est installé.
[CmdletBinding()]
param()
begin {
$SharedParameters = @{
Name = 'MsiPackage'
ModuleName = 'PSDscResource'
Properties = @{
ProductId = '{DEADBEEF-80C6-41E6-A1B9-8BDB8A05027F}'
Path = 'https://contoso.com/example.msi'
Ensure = 'Present'
}
}
$NonGetProperties = @(
'Ensure'
)
}
process {
$TestResult = Invoke-DscResource -Method Test @SharedParameters
if ($TestResult.InDesiredState) {
$QueryParameters = $SharedParameters.Clone()
foreach ($Property in $NonGetProperties) {
$QueryParameters.Properties.Remove($Property)
}
Invoke-DscResource -Method Get @QueryParameters
} else {
Invoke-DscResource -Method Set @SharedParameters
}
}
Avec une configuration
Cet extrait de code montre comment définir un Configuration
bloc de ressources pour MsiPackage
vous assurer qu’un package sur un URI web est installé.
Configuration InstallPackageFromHttps {
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
MsiPackage ExampleMsiPackage {
ProductId = '{DEADBEEF-80C6-41E6-A1B9-8BDB8A05027F}'
Path = 'https://contoso.com/example.msi'
Ensure = 'Present'
}
}
}