Bonjour

Est il possible de "spliter" un function dont le bloc d'instruction "déborde" sur plusieurs fichiers ?

Je m'explique, j'ai un fichier de fonction nommé mes_fonctions.ps1

#déclaration de ma fonction "mafonction"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
mafunction 
{
...
}
Le corps de mon script est nommé corps.ps1

Pour importer la fonction, je déclare son nom de fichier en début de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
#déclaration du chemin d'accès au fichier
$workPath = split-path $MyInvocation.MyCommand.Definition
. $workPath\mesfonctions.ps1
Ensuite je déclare ma fonction qui englobe 90% de mon script, mais, j'ai besoin d'extraire une installation particulière qui ne doit pas faire partie du corps principal.
mafonction est inclus dans une structure conditionnelle "if"


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
#La "structure" du fichier corps.ps1
$workPath = split-path $MyInvocation.MyCommand.Definition
. $workPath\mesfonctions.ps1

if (mafonction) 
{
bloc
}   # Si je déplace '}' sur le script installation.ps1, j'ai une erreur

. $workPath\installation.ps1
Cependant, le bloc en question, est sur 2 fichiers *.ps1 différents.
J'ai testé plusieurs choses. Mon script ce déroule bien sans la fonction, je sais exécuter un script réparti sur plusieurs fichier.
J'essais de "porter" le corps de la fonction sur les 2 scripts, mais erreur de fermeture de bloc ( j'avais déplacé le "}" sur le second script)...

Si vous avez pu le faire par le passé, je suis curieux de comprendre comment vous avez fait. Ensuite, si ce n'est pas envisageable, dois-je reconsidérer ma condition if pour le script ?

Vincent