vodkadji
Messages postés3Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention 2 juin 2003
-
2 juin 2003 à 12:57
cs_yanck
Messages postés4Date d'inscriptionvendredi 27 juin 2003StatutMembreDernière intervention25 août 2005
-
25 août 2005 à 10:13
Bonjour
J'utilise l'interface php et COM pour écrire à partir d'un script php dans un document word.
Le problème est le suivant : pour atteindre des bookmarks dans le document word que j'ouvre, il faut que je charge dans mon script la librairie appropriée par la commande suivante :
com_load_typelib('Word.Application');
cette commande lance un processus WINWORD.EXE, qui ne termine jamais (même quand on ferme word, ou que le script s'est exécuté).
Pourquoi ce precessus ne termine-t-il pas ?
Comment terminer ce processus autrement qu'à la main (ctrl+al+supp puis terminer le processus etc.) ?
merci pour votre aide
Nicolas
voici le script exécuté :
<?php
$empty = new VARIANT();
//chargement de la librairie
com_load_typelib('Word.Application');
// Création de l'objet
$word = new COM('word.application') or die('Unable to load Word');
print "word chargé, version {$word->Version}\n";
$word->Documents->Open("C:/test.doc");
// On remplit les champs à partir des données des formulaires
$word->Selection->GoTo(wdGoToBookmark,$empty,$empty,"commune");
$word->Selection->TypeText("toto");
// On sauve, on ferme word et on termine
$word->Documents[1]->SaveAs("C:/toto.doc");
$word->Quit();
$word->Release();
$word = null;
print "Word fermé.\n";
cs_yo51
Messages postés10Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention10 juillet 2003 18 juin 2003 à 11:21
yop<s>yop...yop</s> 8-)
salut,
essaie tout simplement d'enlever cette ligne (com_load_typelib('Word.Application'));
tu va voir ça marche sans et alors plus de processus de word!
------------------------------
Réponse au message :
-------------------------------
> Bonjour
>
> J'utilise l'interface php et COM pour écrire à partir d'un script php dans un document word.
>
> Le problème est le suivant : pour atteindre des bookmarks dans le document word que j'ouvre, il faut que je charge dans mon script la librairie appropriée par la commande suivante :
>
> com_load_typelib('Word.Application');
>
> cette commande lance un processus WINWORD.EXE, qui ne termine jamais (même quand on ferme word, ou que le script s'est exécuté).
>
> Pourquoi ce precessus ne termine-t-il pas ?
> Comment terminer ce processus autrement qu'à la main (ctrl+al+supp puis terminer le processus etc.) ?
>
> merci pour votre aide
>
> Nicolas
>
> voici le script exécuté :
>
> <?php
>
> $empty = new VARIANT();
>
> //chargement de la librairie
> com_load_typelib('Word.Application');
>
> // Création de l'objet
> $word = new COM('word.application') or die('Unable to load Word');
> print "word chargé, version {$word->Version}\n";
>
> $word->Documents->Open("C:/test.doc");
>
>
> // On remplit les champs à partir des données des formulaires
> $word->Selection->GoTo(wdGoToBookmark,$empty,$empty,"commune");
> $word->Selection->TypeText("toto");
>
> // On sauve, on ferme word et on termine
> $word->Documents[1]->SaveAs("C:/toto.doc");
> $word->Quit();
> $word->Release();
> $word = null;
> print "Word fermé.\n";
>
> ?>
>
XIIIadidas
Messages postés5Date d'inscriptionmardi 11 mars 2003StatutMembreDernière intervention28 octobre 2004 28 oct. 2004 à 15:57
Salut,
J'arrive un peu tard sur le sujet mais lorsque j'enlève ligne com_load_typelib('Word.Application');, il me met des warning sur les lignes $word->Selection->GoTo(wdGoToBookmark,$empty,$empty,'mon_champs'); et dans le doc word il m'ecrit mes variables en début de fichier et dans les signets au lieu de les écrire juste dans les signets...