Impression d'un fichier PDF en automatique

pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012 - 31 mars 2009 à 16:03
pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012 - 7 avril 2009 à 20:44
Bonjour,
je développe actuellement une application web aspnet avec des fonctionnalités de téléchargement, d'impression et de sauvegarde de fichier pdf present sur le serveur. J'arrive à ouvrir le fichier PDF sur mon poste client mais je n'arrive pas à imprimer directement ce fichier de mon poste client.
Est ce que quelqu'un à une idée?
Merci  

<!-- / message -->

6 réponses

pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012
31 mars 2009 à 16:56
Voici mon code :
----------------------------------------------------------------------<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

A insérer dans ClassCommun

----------------------------------------------------------------------

    PublicSharedSub PrintReport(ByVal MyURL AsString)

        Dim URL AsString = MyURL

        Dim LocalFile AsString = "\\Cheminserveur\FicheClient.PDF"

        'Recopie du report dans un fichier temporaire 

        DownloadWebFile(URL, LocalFile)

        'Impression du fichier temporaire et envoye à acrobat

        PrintAdobePDF(LocalFile)

        'supression du fichier temporaire

        If IO.File.Exists(LocalFile) Then IO.File.Delete(LocalFile)

    EndSub

    PublicSharedSub PrintAdobePDF(ByVal Filename AsString)

        Dim myProcess AsNew Process()

        myProcess.StartInfo.FileName = Filename

        myProcess.StartInfo.WorkingDirectory = New IO.FileInfo(Filename).DirectoryName

        myProcess.StartInfo.CreateNoWindow = True

        myProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden

        myProcess.StartInfo.Verb = "Print"

        myProcess.Start()

        IfNot myProcess.HasExited Then

            myProcess.WaitForInputIdle(5000)

            Dim i AsInteger = 1

            Dim lbRunning AsBoolean = True

            While lbRunning And i <= 20

                System.Threading.Thread.Sleep(500)

                SelectCase myProcess.HasExited

                    CaseTrue : lbRunning = False

                    CaseFalse : lbRunning = Not myProcess.CloseMainWindow

                EndSelect

                i += 1

            EndWhile

            If lbRunning AndAlsoNot myProcess.HasExited Then myProcess.Kill()

            myProcess.Dispose()

        EndIf

    EndSub

    PublicSharedSub DownloadWebFile(ByVal URL AsString, ByVal DestFilename AsString)

        Dim WebFile As System.Net.WebRequest

        Dim LocalFile As System.IO.FileStream

        Dim Buffer(16384) AsByte

        Dim BytesRead AsLong

        WebFile = System.Net.WebRequest.Create(URL)

        WebFile.Credentials = System.Net.CredentialCache.DefaultCredentials

        LocalFile = New IO.FileStream(DestFilename, IO.FileMode.Create)

        With WebFile.GetResponse.GetResponseStream

            Do

                BytesRead = .Read(Buffer, 0, 16384)

                LocalFile.Write(Buffer, 0, BytesRead)

            LoopUntil BytesRead = 0

            .Close()

        EndWith

        WebFile = Nothing

        LocalFile.Flush()

        LocalFile.Close()

        LocalFile = Nothing

    EndSub

 

----------------------------------------------------------------------

A insérer dans la page de code

----------------------------------------------------------------------

 

PrintReport (Nom du report)
0
cs_scoufild Messages postés 61 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 13 avril 2011
31 mars 2009 à 18:12
bonjour ,

est ce que ta le droit d'impression  ,veuillez contacté votre administrateur si ta l'accès d'imprimer un document ( vérifier d'imprimer un document quelconque)

Bien
cordialement
Scoufild
0
pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012
31 mars 2009 à 21:37
Bonjour,

Le PB n'est pas là. En fait, il nous ouvre une fenêtre avec le fichier PDF (on a le choix de l'ouvrir ou de l'enregistrer ou d'annuler). Donc si on choisit ouvrir et que l'on fait imprimer cela fonctionne. Mais on veut passer outre tout cela, c'est a dire le fait de cliquer sur valider il nous envoie l'impression du PDF en auto sur l'imprimante par défaut de notre poste.

Cordialement
0
cs_scoufild Messages postés 61 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 13 avril 2011
1 avril 2009 à 20:37
Bonjour,

est ce que tu veux spécifie l'imprimante par défaut pour imprimer votre document ?,merci de bien expliqué le souci

Bien cordialement
Scoufild
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012
1 avril 2009 à 22:16
Bonjour,

En fait, vu que j'execute l'appli ASP.NET est hébergée sur mon serveur et que je veux l'exécuter d'un poste client, je pense que le PB vient de la ... J'aimerais que mon appli lance l'impression en auto de mon PDF en choisissant bien sur l'imprimante par défaut de mon poste client.

Cordialement
0
pepetcho Messages postés 11 Date d'inscription lundi 9 février 2009 Statut Membre Dernière intervention 7 décembre 2012
7 avril 2009 à 20:44
Bonjour,

Personne à de soluces ???

Merci d'avance
0
Rejoignez-nous