Bonjour,
je vous remercie pour tous pour vos conseils et assistances.
j'ai résolus le problème en changeant juste l'encodage du script powershell lui même (notepad++ menu encodage).
je l'ai passé en utf16-BE et ça a résout le problème
Merci une deuxième Fois pour votre aide généreuse.
Le 4 juin 2015 11:44, tarik chichane tarikchichane2006@gmail.com a écrit :
bonjour,
est c que tu peux me dire quel encodage tu utilise dans ton interpréteur powershell, sinon c'est quoi l'interpréteur powershell que tu utilises.
Merci 1000 fois d'avance
Tarik CHICHANE
Le 3 juin 2015 18:31, Lucas lucas.spam@gmail.com a écrit :
Hum, fonctionne "out of the box" chez moi avec un fichier test.doc et tést.doc
Le 3 juin 2015 19:18, Benjamin AVET benjamin.avet@gmail.com a écrit :
Quel est l'encodage utilisé pour écrire ton scritp ?
Le 3 juin 2015 17:15, tarik chichane tarikchichane2006@gmail.com a écrit :
Bonjour,
je reviens vers vous pour un problème simple mais qui commence à peser lourd
j'ai un répertoire qui contient beaucoup de document word (une centaine).
je veux ajouter une ligne au début de chaque document qui contient la mention document restreint.
là j'attaque la tâche avec du powershell
tout marche bien, tout est nickel, la ligne s'ajoute et le document est bien modifié.
je passe en production et c'est la catastrophe.
tout les fichiers qui contiennent dans leur titre un accent ou un caractère spéciale
sont catégoriquement rejeté et je ne peux pas les ouvrir.
mon script est
$file1 = "D:/matricule/DéPLOIMENT_V1.2.docx" #$file1 = "D:\matricule\DEPLOIMENT_V1.2.docx" Try
#Open Microsoft Word and add text defined in $key then save
{
[ref]$SaveFormat = "microsoft.office.interop.word.WdSaveFormat" -as [type]
$word = New-Object -ComObject Word.Application
$word.visible = $false
$doc = $word.Documents.Add($file1)
$selection = $word.Selection
$selection.typeText($key)
$doc.saveas([ref] $file1, [ref]$SaveFormat::wdFormatDocument)
}
#Catch
#If error occurs send email
#{
#Send-MailMessage -from $smtpFrom -subject $messageSubject -body $messagebody -To $smtpTo -smtpserver $smtpsrvr -port 25
#}
Finally
#Close Microsoft Word
{
$word.quit()
$word = $null }
avec un fichier deploiement_server.docx ça marche
pour le même fichier avec le nom déploiement_server.docx
ça marche pas (remarquer l'accent é dans déploiement) et j'ai l'erreur suivante
Exception lors de l'appel de « Add » avec « 1 » argument(s) : « Fichier introuvable. » Au niveau de C:\Users\t.chichane\Desktop\modify_word.ps1 : 35 Caractère : 27
- $doc = $word.Documents.Add <<<< ($file1)
- CategoryInfo : NotSpecified: (:) [],
MethodInvocationException + FullyQualifiedErrorId : ComMethodTargetInvocation
est ce que vous avez eu ce genre de problème et comment l'avez vous résolus.
si vous avez une autre approche je suis très intéressé de l'entendre
Tarik CHICHANE
Liste de diffusion du FRsAG http://www.frsag.org/
Liste de diffusion du FRsAG http://www.frsag.org/
Liste de diffusion du FRsAG http://www.frsag.org/