Question
Lenteur script sous WIN2008 R2 avec Rôle TSE
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 15 ans 6 mois #7847
par FO
Lenteur script sous WIN2008 R2 avec Rôle TSE a été créé par FO
Bonjour à tous !
Je rencontre quelques problèmes avec mon premier script en PS1.
Celui-ci, permet de générer automatiquement une signature Outlook à chaque fermeture de session Windows. J'utilise l'objet word.application que j'ouvre et je remplace des champs standard que j'ai mis en signet.
Le but est que chaque client légé qui se connecte sur le serveur TSE puisse généré sa propre signature Outlook (comme sur les autres postes lourds)
Le script fonctionne à merveille sous des clients lourds, des serveurs en WIN2008 R2 mais pas avec le Rôle TSE.
Fonctionnement normal : le script s'éxécute en 10-15 secondes
Fonctionnement sous TSE : 5-6 min
Tests éffectués :
- suppresion du Rôle TSE sur le serveur en question (éxécution du script en 10-15 secondes),
- Test sur un autre serveur de TEST, même symptomes
10-15 secondes sans le TSE, 5-6 min avec le Rôle TSE
- Rôle TSE avec un seul utilisateur dessus, même problème
- J'ai la possibilité d'accélérer le script en cliquant sur la page word (lorque je le rends visible \"true\")
et en faisant bouger cette fenetre comme pour la déplacer
Voici le code en question :
[code:1]
$MSWord = New-Object -comobject word.application
#ouverture du document type
$MSWord.Documents.Open('D:\test.rtf')
#remplacement des infos récupérer de l'AD
($MSWord.ActiveDocument.Bookmarks.Item(\"DisplayName\"«»)).Select()
$MSWord.Selection.Text=$ADDisplayName
($MSWord.ActiveDocument.Bookmarks.Item(\"Title\"«»)).Select()
$MSWord.Selection.Text=$ADTitle
($MSWord.ActiveDocument.Bookmarks.Item(\"TelephoneNumber\"«»)).Select()
$MSWord.Selection.Text=$ADTelePhoneNumber
($MSWord.ActiveDocument.Bookmarks.Item(\"EmailAddress\"«»)).Select()
$MSWord.Selection.Text=$ADEmailAddress
($MSWord.ActiveDocument).Save()
($MSWord.ActiveDocument).Close()
$MSWord.Quit()
[/code:1]
N'ayant aucun message d'erreur je ne sais pas où chercher.
Merci d'avance pour votre aide.
Je rencontre quelques problèmes avec mon premier script en PS1.
Celui-ci, permet de générer automatiquement une signature Outlook à chaque fermeture de session Windows. J'utilise l'objet word.application que j'ouvre et je remplace des champs standard que j'ai mis en signet.
Le but est que chaque client légé qui se connecte sur le serveur TSE puisse généré sa propre signature Outlook (comme sur les autres postes lourds)
Le script fonctionne à merveille sous des clients lourds, des serveurs en WIN2008 R2 mais pas avec le Rôle TSE.
Fonctionnement normal : le script s'éxécute en 10-15 secondes
Fonctionnement sous TSE : 5-6 min
Tests éffectués :
- suppresion du Rôle TSE sur le serveur en question (éxécution du script en 10-15 secondes),
- Test sur un autre serveur de TEST, même symptomes
10-15 secondes sans le TSE, 5-6 min avec le Rôle TSE
- Rôle TSE avec un seul utilisateur dessus, même problème
- J'ai la possibilité d'accélérer le script en cliquant sur la page word (lorque je le rends visible \"true\")
et en faisant bouger cette fenetre comme pour la déplacer
Voici le code en question :
[code:1]
$MSWord = New-Object -comobject word.application
#ouverture du document type
$MSWord.Documents.Open('D:\test.rtf')
#remplacement des infos récupérer de l'AD
($MSWord.ActiveDocument.Bookmarks.Item(\"DisplayName\"«»)).Select()
$MSWord.Selection.Text=$ADDisplayName
($MSWord.ActiveDocument.Bookmarks.Item(\"Title\"«»)).Select()
$MSWord.Selection.Text=$ADTitle
($MSWord.ActiveDocument.Bookmarks.Item(\"TelephoneNumber\"«»)).Select()
$MSWord.Selection.Text=$ADTelePhoneNumber
($MSWord.ActiveDocument.Bookmarks.Item(\"EmailAddress\"«»)).Select()
$MSWord.Selection.Text=$ADEmailAddress
($MSWord.ActiveDocument).Save()
($MSWord.ActiveDocument).Close()
$MSWord.Quit()
[/code:1]
N'ayant aucun message d'erreur je ne sais pas où chercher.
Merci d'avance pour votre aide.
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 15 ans 5 mois #7861
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:Lenteur script sous WIN2008 R2 avec Rôle TSE
Bonjour Benjy !
Je ne comprend pas pourquoi PowerShell serait plus lent sur un serveur avec le rôle TSE que sur ce même serveur sans ce rôle. Je pense que le problème doit venir d'ailleurs...
Peux tu poster l'intégralité de ton code afin d'essayer de trouver d'où vient l'erreur ?
De plus, n'oublie pas que D:\test.rtf est le même pour tous les utilisateurs de la machine, en TSE.
Dernière chose, que se passe-t-il si la signature n'existe pas encore ? Le script plante.
Arnaud
Je ne comprend pas pourquoi PowerShell serait plus lent sur un serveur avec le rôle TSE que sur ce même serveur sans ce rôle. Je pense que le problème doit venir d'ailleurs...
Peux tu poster l'intégralité de ton code afin d'essayer de trouver d'où vient l'erreur ?
De plus, n'oublie pas que D:\test.rtf est le même pour tous les utilisateurs de la machine, en TSE.
Dernière chose, que se passe-t-il si la signature n'existe pas encore ? Le script plante.
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 15 ans 5 mois #7871
par FO
Réponse de FO sur le sujet Re:Lenteur script sous WIN2008 R2 avec Rôle TSE
Bonjour,
Merci de ton retour.
Le bout de code, je l'éxécute tel quel. J'ai créé un scrip juste avec ça. Et pour l'instant je le fais sur un seul utilisateur qui se connecte sur le TSE. Lorsque j'aurai résolu le problème je le ferai par GPO.
Pour votre info voici le détail du script final :
- Récupération des données active directory
- Copie du template dans le profil utilisateur de la personne
- Remplacement des données dans ce template (word.application)
Le problème se passe vraiment à partir de ce code :
[code:1]
($MSWord.ActiveDocument.Bookmarks.Item(\"DisplayName\"«»)).Select()
$MSWord.Selection.Text=$ADDisplayName
[/code:1]
A titre d'exemple si je fais juste une ouverture fermeture de Word, il n'y a pas de lenteur.
Merci de ton retour.
Le bout de code, je l'éxécute tel quel. J'ai créé un scrip juste avec ça. Et pour l'instant je le fais sur un seul utilisateur qui se connecte sur le TSE. Lorsque j'aurai résolu le problème je le ferai par GPO.
Pour votre info voici le détail du script final :
- Récupération des données active directory
- Copie du template dans le profil utilisateur de la personne
- Remplacement des données dans ce template (word.application)
Le problème se passe vraiment à partir de ce code :
[code:1]
($MSWord.ActiveDocument.Bookmarks.Item(\"DisplayName\"«»)).Select()
$MSWord.Selection.Text=$ADDisplayName
[/code:1]
A titre d'exemple si je fais juste une ouverture fermeture de Word, il n'y a pas de lenteur.
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 15 ans 5 mois #7872
par FO
Réponse de FO sur le sujet Re:Lenteur script sous WIN2008 R2 avec Rôle TSE
Je viens d'avoir d'autres infos.
J'ai eu une personne de chez microsoft qui me dit que ce serait peut être une histoire de Focus sur TSE (raffraichissement plus lent sur TSE)
Y a t'-il possibilité de faire du raffraichissement en Powershell?
Si quelqu'un a une idée...
J'ai eu une personne de chez microsoft qui me dit que ce serait peut être une histoire de Focus sur TSE (raffraichissement plus lent sur TSE)
Y a t'-il possibilité de faire du raffraichissement en Powershell?
Si quelqu'un a une idée...
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.042 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Lenteur script sous WIN2008 R2 avec Rôle TSE