Question Chargement assembly en tâche de fond

Plus d'informations
il y a 15 ans 4 mois #8017 par Roswelito
Bonjour,

Je cherche à automatiser des tâches pour SharePoint 2007 avec un script PowerShell.

Cependant, le chargement de l'assembly avec la commande suivante [code:1][void][System.Reflection.Assembly]::LoadWithPartialName(\"Microsoft.SharePoint\"«»)[/code:1]prend un certain temps et bloque le script.

Est-il possible de charger l'assembly en tâche de fond et de continuer à profiter des méthodes dans le script principal ?

Cordialement,

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

Plus d'informations
il y a 15 ans 4 mois #8018 par Laurent Dardenne
Salut,
Roswelito écrit:

Est-il possible de charger l'assembly en tâche de fond et de continuer à profiter des méthodes dans le script principal ?

Je n'ai jamais fait, mais je ne pense pas qu'un job PowerShell partage le même AppDomain que la session dans lequel il est exécuté.

Reste à savoir si le temps de chargement est identique sur + machines.

Tutoriels PowerShell

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

Plus d'informations
il y a 15 ans 4 mois #8019 par Roswelito
Bonjour,

Je pensais au début passer par un Start-Job avec cette suite de commande :
[code:1]Start-Job -ScriptBlock {[void][System.Reflection.Assembly]::LoadWithPartialName(\"Microsoft.SharePoint\"«»)}
...
Attente de la fin du job
...
$Farm=[Microsoft.SharePoint.Administration.SPFarm]::local[/code:1]

Mais je tombe sur cette erreur :
Impossible de trouver le type [Microsoft.SharePoint.Administration.SPFarm] : vérifiez que l'assembly dans lequel il se trouve est chargé.

Cordialement,

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

Plus d'informations
il y a 15 ans 4 mois #8020 par Laurent Dardenne
Roswelito écrit:

Mais je tombe sur cette erreur :

Pour vérifier :
[code:1]
function Get-CurrentDomain{[AppDomain]::CurrentDomain}
function Get-Assemblies{(Get-CurrentDomain).GetAssemblies()}
[/code:1]
Mais je pense que ce n'est pas possible de faire comme tu le souhaites.
Comment de temps prend le chargement ?
[code:1]
Measure-Command {[void][System.Reflection.Assembly]::LoadWithPartialName(\"Microsoft.SharePoint\"«»)}
[/code:1]

Tutoriels PowerShell

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

Plus d'informations
il y a 15 ans 4 mois #8021 par Roswelito
Bonjour,

En effet, après le Start-Job, le GetAssemblies() ne me la montre pas disponible.

Le chargement prend 15 secondes, mais comme j'ai une GUI, ça m'aurait permis d'afficher un message de chargement plutôt que de faire freezer l'appli, ou d'attendre avant de la démarrer, ce que je fais actuellement.

Mais si c'est pas possible, je resterais avec ma solution.

Cordialement,

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

Plus d'informations
il y a 15 ans 4 mois #8028 par Laurent Dardenne
Roswelito écrit:

BonjourMais si c'est pas possible, je resterais avec ma solution.

Essai avec d'améliorer le temps de chargement avec Ngen .

Tutoriels PowerShell

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

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