Regarde ca :
Deuxième principe : pour pouvoir accéder à WORD en ASP, word doit avoir été utilisé sur le serveur par le compte utilisé lors de l'accès web. Dans word, il faut ouvrir l'éditeur VBA, puis refermer. Ca na l'air de rien, mais ça permet d'écrire un fichier par défaut, genre normal.dot, impossible à créer à distance. Si ce fichier est absent, vous aurez une erreur indiquant : "Impossible d'ouvrir la macro de stockage". Il peut être utilse de rebooter
> trouvé sur
Asp-phpBy Focalizer ...
-------------------------------
Réponse au message :
-------------------------------
> Quel est le msg d'erreur ? :D
>
> By Focalizer ...
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Ok j'explique un peu plus :)
> >
> > Le principe est de relever les mails d'une boite mail, de sauvegarder les pieces jointes et de convertir celles qui sont dans un format texte (DOC,RTF,TXT,.. donc lisible par word) au format PDF Text.
> > Pour ça g un composant qui releve les mails et pour la conversion une imprimante virtuelle qui crée le fichier PDF.
> >
> > La 1ere dll s'occupe du relevé de mail et de l'enregistrement des pieces jointes, et appelle la seconde dll si une un piece jointe et lisible par word pour la conversion PDF.
> >
> > Au départ j'avais fait une appli pour ce travail que j'av planifié ts les 15min avec le planificateur windows pour une releve réguliere. Seulement, alors q l'appli fonctionnait sans pb en l'exécutant avec un dle click, l'impression (convertion) resté bloqué lorsq'elle était lancé par le planificateur de taches.
> > Donc finalement je voudrai relevé les mails des q'1utilisateur se connecte à la page ASP indiquant les mails recus.
> > mais là autre pb: l'histoire d'automation.
> >
> > voici un extrait du code qui ouvre word et lance l'impression:
> >
> > Private done As Boolean
> > Private printerChanged As Boolean
> > Dim App As word.Application
> > Dim doc As Document
> >
> > ' retourne 0 si ok, 1 si fichier existant and pas overwrite, -1 si autre erreur
> > Function convert(ByVal inputFile As String, ByVal outputDirectory As String, ByVal outputFile As String, ByVal overwrite As Boolean) As Integer
> > Set App = CreateObject("Word.Application") ' C là q'est l'erreur!!
> >
> > doProcess = False
> > Dim filename As String
> > filename = outputDirectory & outputFile
> >
> > If (Fichier_Existe(filename) = True) Then
> > If (overwrite = True) Then
> > Kill filename
> > Else
> > GoTo existant
> > End If
> > End If
> >
> > init outputDirectory, outputFile ' configure les parametre PDF de sortie
> >
> > doProcess = True
> >
> > Set doc = App.Documents.Open(inputFile)
> >
> > Dim oldPrinter As String
> > oldPrinter = App.ActivePrinter
> > App.ActivePrinter = "leadtool" 'l'imprimante ki fait la conversion
> > printerChanged = True
> > doc.PrintOut Background:=False
> > Dim i As Integer
> > i = 90
> > While ((done = False) And (i > 0)) ' si le tps est supperieur à 2min on sort, c q la conversion a planté (arrive uniquement pr la planification des taches)
> > DoEvents
> > Sleep (500)
> > i = i - 1
> > Wend
> > If done = False Then
> > GoTo erreur
> > End If
> >
> > convert = 0
> > GoTo restorePrinter
> > erreur:
> > convert = -1
> > 'MsgBox "erreur"
> > GoTo restorePrinter
> > existant:
> > 'MsgBox "fichier existant"
> > convert = 1
> > GoTo restorePrinter
> > restorePrinter:
> > If (printerChanged = True) Then
> > 'MsgBox "restore printer"
> > App.ActivePrinter = oldPrinter
> > printerChanged = False
> > 'MsgBox "restore printer OK"
> > End If
> >
> > If Not doc Is Nothing Then
> > doc.Close
> > Set doc = Nothing
> > End If
> > If Not App Is Nothing Then
> > App.Quit
> > Set App = Nothing
> > End If
> >
> > Exit Function
> > End Function
> >
> > Alors plus clair? :)
> >
> > merci de chercher une solution :D
> >
>