Question [Resolu] [Module] .ps1 de désapprovisionnement

Plus d'informations
il y a 13 ans 9 mois #7315 par Richard Lazaro
Bonjour à tous,

Voilà je suis en train de créer un Module en PS 2.0.
J'ai un fichier .psd1 qui charge tout les modules nécessaires et un .ps1 qui met en instance certaines constantes (variable avec l'option Constant).

Malheureusement, quand je fais un Remove-Module mes constantes ne sont pas supprimé (ce qui est moche ...)

Est ce qu'une personne a déjà effectué une tâche de ce genre (cad appeler un script qui effectue certaines action lors de la suppression du module).

Bien Cordialement,
Richard Lazaro.

Question bonus : J'utilise PSHyperV, j'ai besoin de le charger mais il m'est impossible de passer le chemin du dossier module avec l'attribut NesteaModule du .psd1 je me vois justement obligé de passer via un fichier .ps1 dans l'attribut ScriptsToProcess.<br><br>Message édité par: Richard.L, à: 7/07/10 17:10

Think-MS : (Get-Life).Days | %{ Learn-More }

\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #7318 par Laurent Dardenne
Salut,
il faut utiliser la propriété OnRemove du module courant :

[code:1]
#
Suppression des objets du Wrapper
function OnRemoveValidationArguments {
Write-debug \&quot;Remove xxx\&quot;
}
#Le script de la propriété 'OnRemove' est appelé
#lors de la suppression du module.
$MyInvocation.MyCommand.ScriptBlock.Module.OnRemove = { OnRemoveValidationArguments }
[/code:1]

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #7322 par Richard Lazaro
Bonjour Laurent,

Merci de me répondre, j'avais déjà entrevu une solution de ce type mais cela se met où ? car moi, actuellement je passe par des fichier .psm1 et .psd1 pour la création de mon module.

Think-MS : (Get-Life).Days | %{ Learn-More }

\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #7324 par Richard Lazaro
Je suppose qu'il faut le mettre dans le fichier .psm1 ?

Think-MS : (Get-Life).Days | %{ Learn-More }

\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #7326 par Laurent Dardenne
Richard.L écrit:

Je suppose qu'il faut le mettre dans le fichier .psm1 ?

Oui, un module natif, language PowerShell, est constitué d'au moins un fichier .psm1.
Et un module compilé est constitué d'au moins un fichier .psd1 plus un ou des assemblies, exemple BitsTransfer.psd1.

Mais si je me souviens bien une variable constante ne peut être supprimée une fois déclarée, à la différence d'une variable ReadOnly.

De plus consulte MSConnect à ce sujet car il y a qq bug dans certains cas

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #7328 par Richard Lazaro
Merci, donc je vais l'écrire dans mon .psm1.

Pour la variable constante normalement, on ne peut la supprimer si on est pas dans (envrionnement/scope je sais pas trop) qui l'a créé et je pensais la changer en ReadOnly ^^

Merci Bien.

Think-MS : (Get-Life).Days | %{ Learn-More }

\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.109 secondes
Propulsé par Kunena