1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

choisir imprimante par programation

Discussion dans 'Windev' créé par brigade16, Déc 16, 2019.

  1. brigade16

    brigade16 Member

    Inscrit:
    Déc 9, 2019
    Messages:
    33
    J'aime reçus:
    3
    Bonjour,
    S il vous plait comment faire pour choisir une imprimante par programmation.Par exemple j ai deux fiche à imprimer dont une sur l imprimante par défaut et la deuxième sur une autre imprimante installé sur l ordinateur et je veux que l utilisateur finale ne change rien manuellement.
     
    Tags:
  2. channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Bonjour

    La fonction iConfigure() le fait.


    Un exemple de code :


    Code (Windev):
    sNomImprimante_1 est une chaîne = "HP LaserJet 9055 MFP PCL6 Class Driver"
    sNomImprimante_2 est une chaîne = "Epson ESC/P 9pin V4 Class Driver"

    // Impression sur Imprimante 1
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_1) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN
    // Impression sur Imprimante 2
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_2) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN

     
    Bon dev.
     
    Amariaeh et suenodesign aiment ça.
  3. brigade16

    brigade16 Member

    Inscrit:
    Déc 9, 2019
    Messages:
    33
    J'aime reçus:
    3

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour

    La fonction iConfigure() le fait.


    Un exemple de code :


    Code (Windev):
    sNomImprimante_1 est une chaîne = "HP LaserJet 9055 MFP PCL6 Class Driver"
    sNomImprimante_2 est une chaîne = "Epson ESC/P 9pin V4 Class Driver"

    // Impression sur Imprimante 1
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_1) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN
    // Impression sur Imprimante 2
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_2) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN

     
    Bon dev.
    Cliquez pour agrandir...
    MERCI POUR LA REPONSE. JE PEUT APPLIQUER le meme code pour une imprimante reseau patager ?
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Si t'as le nom de l'imprimante oui, puisque la fonction appelle l'imprimante par son "nom"

    Sinon, si tu veux, tu peux passer par un fichier ini pour éviter de changer le code source à chaque fois après des éventuels changements de nom des imprimante sur les PCs des utilisateurs.
     
  • brigade16

    brigade16 Member

    Inscrit:
    Déc 9, 2019
    Messages:
    33
    J'aime reçus:
    3
    Merci pour votre collaboration
    Pour le fichier INI je doit le programmer en stockant les nom d imprimantes ?
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Voici un exemple :

    J'ai crée 2 fenêtres:
    1- Fenêtre de choix des imprimantes
    2- Fenêtre de l'impression avec un bouton imprimer


    Fenêtre 1

    [​IMG]

    Code Initialisation de la fenêtre :


    Code (Windev):

    //*Initialisation*
    sFichier est une chaîne
    //********************

    sFichier =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()+"\ParamImprimantes.ini"

    RemplirListeImprimantes()
    sValeur est une chaîne

    // Lit la valeur 'Nom' de l'imprimante 1
    sValeur =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_1", "Nom", "", sFichier)

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
    FIN

    // Recherche de de l'imprimante 1 dans la liste 1
    COMBO_Imprimante_1=

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (COMBO_Imprimante_1,sValeur)

    // Lit la valeur 'Nom' de l'imprimante 2
    sValeur =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_2", "Nom", "", sFichier)

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
    FIN

    // Recherche de de l'imprimante 2 dans la liste 2
    COMBO_Imprimante_2=

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (COMBO_Imprimante_2,sValeur)
     
    Code Bouton Valider :

    Code (Windev):
    SI PAS

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sFichier) = Vrai ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sFichier)
    FIN

    // Modifie la valeur 'Nom'

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_1", "Nom", COMBO_Imprimante_1..ValeurAffichée, sFichier)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_2", "Nom", COMBO_Imprimante_2..ValeurAffichée, sFichier)

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
    FIN

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
     
    Fenêtre 2

    [​IMG]

    Le code du bouton Imprimer sera alors :


    Code (Windev):
    sFichier est une chaîne =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()+"\ParamImprimantes.ini"

    sNomImprimante_1 est une chaîne =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_1", "Nom", "", sFichier)
    sNomImprimante_2 est une chaîne =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Imprimante_2", "Nom", "", sFichier)

    // Impression sur Imprimante 1
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_1) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN
    // Impression sur Imprimante 2
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_2) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN
     

    Bon dev.
     
    Amariaeh apprécie ceci.
  • brigade16

    brigade16 Member

    Inscrit:
    Déc 9, 2019
    Messages:
    33
    J'aime reçus:
    3
    merci encore

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .j ai tester la premiere solution en declarant dans une variable qui contient le nom de l imprimante . mais j ai trouvé un probleme que l'imprimante par defaut change et sera le meme nom que celui declaré .je pense que à la sortie de limpression je doit fixe de nouveau l imprimante par defaut
     
  • channibal

    channibal Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 22, 2018
    Messages:
    210
    J'aime reçus:
    277
    Pour revenir à nouveau sur l'imprimante par défaut, ajoute juste un iRAZ() après l'impression de l’état

    Code (Windev):
    // Impression sur Imprimante 2
    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sNomImprimante_2) ALORS
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ETAT_Test)
    FIN

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
     
    Edit: J'ai oublié la procédure pour remplir les listes des imprimantes


    Code (Windev):
    PROCÉDURE RemplirListeImprimantes()

    sListeImprimante est une chaîne
    sListeImprimante =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (COMBO_Imprimante_1,sListeImprimante)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (COMBO_Imprimante_2,sListeImprimante)
     
    Bon dev.
     
    Amariaeh et suenodesign aiment ça.
  • brigade16

    brigade16 Member

    Inscrit:
    Déc 9, 2019
    Messages:
    33
    J'aime reçus:
    3

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    merci et c est tres gentil de votre part. c est fait
     
    TABB ABDEL apprécie ceci.
  • Partager cette page

    Chargement...