Programmation sous Word

marik7335 Messages postés 115 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 11 mai 2009 - 7 avril 2008 à 10:05
marik7335 Messages postés 115 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 11 mai 2009 - 7 avril 2008 à 10:09
Bonjour,

   Je suis confronté à un problème depuis quelques temps.
   Je souhaite générer des rapports au format Doc (avec Word). Pour celà je dispose d'un poste client qui effectue sa demande de création de rapport à un serveur windows 2003 depuis une page ASP.NET (pour info, le poste client tourne sous Windows XP Pro SP2). Le fichier Word est créé à partir d'un document template, donc je dois ouvrir ce dernier. Et c'est bien là le problème.
  Voici le message d'erreur qui apparaît : 
Erreur du serveur dans l'application '/'.
<hr width= "100%" color="silver" size="1" />
La commande a échoué
Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.Runtime.InteropServices.COMException: La commande a échoué

Erreur source:

Ligne 149 :        '[Visible]) As Document

Ligne 150 : Dim missing As Object = System.Reflection.Missing.Value
Ligne 151 : Me.handler.Documents.Open(filename, False, False, False, missing, missing, False, missing, missing, Word.WdOpenFormat.wdOpenFormatDocument)
Ligne 152 : End Sub
Ligne 153 :

Fichier source : D:\web\Generateur\App_Code\WordApplication.vb    Ligne : 151

Trace de la pile:

[COMException (0x800a1066): La commande a échoué]

Word.Documents.Open(Object& FileName, Object& ConfirmConversions, Object& ReadOnly, Object& AddToRecentFiles, Object& PasswordDocument, Object& PasswordTemplate, Object& Revert, Object& WritePasswordDocument, Object& WritePasswordTemplate, Object& Format, Object& Encoding, Object& Visible, Object& OpenAndRepair, Object& DocumentDirection, Object& NoEncodingDialog) +0
WordApplication.openDocument(String filename, Boolean visible) in D:\web\Generateur\App_Code\WordApplication.vb:151
CoreGenerator..ctor() in D:\web\Generateur\App_Code\CoreGenerator.vb:69
CoreGenerator.Generation() in D:\web\Generateur\App_Code\CoreGenerator.vb:36
_Default.cmdGen_Click(Object sender, EventArgs e) in D:\web\Generateur\Default.aspx.vb:6
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102

Pourtant j'ai bien vérifié les accès, c'est à dire que j'ai bien gérer les droits depuis DCOMCNFG.EXE et aussi j'ai donné l'accès au répertoire ainsi qu'au document template à SERVICE RESEAU, ASPNET et IUSR en contrôle total.
J'ai donc effectué deux tests :

Un sous mon XP pro avec la même gestion des droits. Le serveur 2003 effectue sa demande de création au poste sous XP. Cela fonctionne parfaitement. Le rapport est bien généré.

J'ai effectué le même test mais cette fois-ci, c'est mon XP pro qui fait sa demande au serveur 2003. le message d'erreur donné plus haut apparaît. Malgrès mes recherches sur Google, le site de Microsoft, etc. je n'ai pas trouvé de solution à ce problème.

Pourriez-vous m'aider ?

Cordialement.

Marik7335.

1 réponse

marik7335 Messages postés 115 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 11 mai 2009
7 avril 2008 à 10:09
L'arreur Source s'est mal affichée.

   

   
Ligne 149 : '[Visible]) As Document

Ligne 150 : Dim missing As Object = System.Reflection.Missing.Value
Ligne 151 : Me.handler.Documents.Open(filename, False, False, False, missing, missing, False, missing, missing, Word.WdOpenFormat.wdOpenFormatDocument)
Ligne 152 : End Sub
Ligne 153 :
0