Page 1 sur 1

Word+Com

Posté : 01 févr. 2006, 14:17
par jherrgot
Salut a tous !

Voila , j'ai un script php qui est censé me permettre d'insérer des variables dans un document Word et le sauver.
Malheureusement ca ne fonctionne pas et le script me retourne l'erreur suivante :
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `word.application': Paramètre incorrect. ' in G:\courrier_word.php:6 Stack trace: #0 G:\courrier_word.php(6): com->com('word.applicatio...') #1 {main} thrown in G:\courrier_word.php on line 6
Voilà le script. A priori il n'arrive pas a créer l'instance word.Avez-vous une idée du pourquoi ? Pour info , Word est bien installé sur le serveur et fonctionne normalement. (word 2000)
$date = date("d-m-Y");
$heure = date("H.i.s");

//1. Nouvelle instance Word
$word=new COM("word.application");

//2. Spécifie le document temp word (a adapter suivant le dossier de stockage sur le serveur !!!)
$template_file = "G:/contrat_temp.doc";

//3. On ouvre le document
$word->Documents->Open($template_file);

//4. On récupère les variables
//date du jour
$current_date = date("m/d/Y");

//on repère l'endroit ou se trouve le signet date et on remplace
$bookmarkname = "Date";
$objBookmark = $word->ActiveDocument->Bookmarks($bookmarkname);
$range = $objBookmark->Range;
//on remplace le signet par la valeur
$range->Text = $current_date;

//7. On sauve le document sous un nouveau nom
$new_file = "G:/CONTRAT_temp_".$date."_".$heure.".doc";
$word->Documents[1]->SaveAs($new_file);

//8. On detruit l'instance word
$word->Quit();
$word->Release();
$word = null;
Merci pour votre aide !!

@+

JM

Posté : 01 févr. 2006, 19:49
par jherrgot
Re

Après pas mal de recherches, il semblerait qu'il s'agisse d'un problème de droit sur l'ouverture d'un document word (Options de DCOM dans windows)
Je n'arrive malgré tout pas a résoudre , alors si quelqu'un a une solution pour windows 2000 , je suis preneur !!

Merci
@+

JM