IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6] Imprimer un document PDF


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mai 2007
    Messages : 21
    Par défaut [VB6] Imprimer un document PDF
    Bonjour,

    Pour mon logiciel, j'avais besoin d'imprimer un document au format PDF.

    En fouillant, j'ai trouvé le code que voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
        ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
     
    Public Sub imprimer_fichier(Chemin As String, le_form As Form)
        'imprimer le fichier dont le chemin est passé en paramètre
        ShellExecute le_form.hwnd, "print", Chemin, "", "", 1
    End Sub
    L'impression marche parfaitement, mais Acrobat Reader ce lance en même temps, ce qui est assez génant.

    Existe-t-il un moyen d'empécher Acrobat de se lancer automatiquement, ou bien avez-vous une meilleur méthode à me proposer ?

    Merci d'avance.

  2. #2
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Ouvre le APIViewer pour copier la déclaration des constantes nécessaires. Trouve l'une de celles-ci.
    Citation Envoyé par MSDN (version anglaise)
    SW_HIDE Hides the window and activates another window.
    SW_MAXIMIZE Maximizes the specified window.
    SW_MINIMIZE Minimizes the specified window and activates the next top-level window in the z-order.
    SW_RESTORE Activates and displays the window. If the window is minimized or maximized, Windows restores it to its original size and position. An application should specify this flag when restoring a minimized window.
    SW_SHOW Activates the window and displays it in its current size and position.
    SW_SHOWDEFAULT Sets the show state based on the SW_ flag specified in theSTARTUPINFO structure passed to theCreateProcess function by the program that started the application. An application should callShowWindow with this flag to set the initial show state of its main window.
    SW_SHOWMAXIMIZED Activates the window and displays it as a maximized window.
    SW_SHOWMINIMIZED Activates the window and displays it as a minimized window.
    SW_SHOWMINNOACTIVE Displays the window as a minimized window. The active window remains active.
    SW_SHOWNA Displays the window in its current state. The active window remains active.
    SW_SHOWNOACTIVATE Displays a window in its most recent size and position. The active window remains active.
    SW_SHOWNORMAL Activates and displays a window. If the window is minimized or maximized, Windows restores it to its original size and position. An application should specify this flag when displaying the window for the first time.
    J'ai comme l'impression que SW_HIDE fera l'affaire.

    Edit : J'ai oublié de mentionner que la constante que tu utilisera servira à remplacer le 1 que tu as mis comme valeur du dernier paramètre.

  3. #3
    Membre habitué
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut Petit souchi
    J'ai le même problème que MAT 76.
    J'ai essayé de remplacé le 1 à la fin par SW_HIDE mais la fenêtre d'adobe s'ouvre toujours.
    Voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
        ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    Sur action d'un bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If Optfrp Then
    ShellExecute Me.hwnd, "print", CheminF, "", "", 1
    ShellExecute Me.hwnd, "print", CheminMTF, "", "", 1
    Else
    End If
    Merci de votre aide

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par La crevette
    J'ai le même problème que MAT 76.
    J'ai essayé de remplacé le 1 à la fin par SW_HIDE mais la fenêtre d'adobe s'ouvre toujours.....
    as tu comme la dit ZaZa récupéré la déclaration de ta constante SW_HIDE..?
    je ne vois pas cette déclaration dans ton code ..!


    sinon avec SW_HIDE en paramètre acrobat et lancé mais minimisé (fenêtre non active..).

  5. #5
    Membre habitué
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut Ben euh!!
    J'ai fait un essai en remplaçant le 1 par SW_HIDE. Mais cela n'a pas marché. Au fait qu'est ce qu etu entends par "récupérer la déclaration de ta constante SW_HIDE"
    Comment faire ????? Pour moi débutant c'est pas clair. J'ai décalré des API en début de module de ma form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    mais la constante comment je fais ?

  6. #6
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Citation Envoyé par bbil
    as tu comme la dit ZaZa récupéré la déclaration de ta constante SW_HIDE..?
    Dans tes déclaration il faut que tu ais cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Const SW_HIDE  = 0
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  7. #7
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    pour déclarer tes constantes voir APIViewer... ( pages outils du site..)

    à placer tout en haut de ton code...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Const SW_HIDE = 0
    Private Const SW_SHOWNORMAL = 1
    ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PDF] Imprimer un document pdf automatiquement
    Par dede92 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 13/09/2011, 06h45
  2. Imprimer un document PDF en arrière-plan dans SAP
    Par Kevinsmith74 dans le forum SAP
    Réponses: 2
    Dernier message: 10/02/2010, 13h33
  3. Imprimer des documents pdf
    Par omen999 dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 16/07/2008, 16h20
  4. [C#]Imprimer un document PDF
    Par Mictou dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/12/2007, 16h48
  5. imprimer des documents pdf ou images
    Par Invité dans le forum Access
    Réponses: 4
    Dernier message: 21/01/2007, 17h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo