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

API, COM et SDKs Delphi Discussion :

PrintTo et ShellExecute


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 527
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 527
    Par défaut PrintTo et ShellExecute
    Bonjour

    Pour lancer une impression avec ShellExecute sur une imprimante en particulier, je change celle par défaut, j'imprime puis je remets l'imprimante par défaut précédemment définie. Classique !
    Mais n'y aurait-il pas une autre solution ?
    J'ai vu sur un site l'utilisation possible de "printto" en passant en paramètres les informations de l'imprimante de destination mais il semble que ça ne soit pas standard.

    Une autre idée à me proposer ?

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 017
    Par défaut
    Qui est l'auteur du programme lancé via ShellExecute ?
    Si c'est le tien, rien n'empêche d'enrichir ta ligne de commande si tu es aussi celui qui invoque le programme via un autre de tes programmes.

    Si c'est un programme tiers, sans documentation du logiciel, si elle existe, sur la commande "Print", rien ne permet de savoir ce que tu peux faire.
    Et "PrintTo" si effectivement, c'est connu, il dépend de l'effort du développeur d'avoir pensé que la ligne de commande reçue contienne le nom de l'imprimante.

    Sans compter que ShellExecute tu fais un PrintTo sur un Fichier avec une extension connue, c'est le Shell qui lance l'exécutable associé à l'extension, et si je me trompe pas, cela dépend ensuite du mode de lancement.
    Dans la base de registre le PrintTo doit être présent et ensuite soit c'est une simple "command" où le nom de l'imprimante sera passé en ligne de commande et il me semble que l'on peut utiliser à la place un mode DDE.
    Faudrait vérifier ce que supporte le programme tiers.
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 527
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 527
    Par défaut
    Le programme a été créé il y a bien longtemps en D5 et je ne fais qu'aider à l'améliorer.
    Après avoir lu ta réponse je suis allé fouiller dans la base de registre et j'ai bien trouvé des "printto" à divers endroits.
    Le problème est que je ne peux savoir à l'avance quelle imprimante sera utilisée et il il sera difficile de savoir à l'utilisation si ce printto sera possible.
    Je vais du côté de DDE pour voir les éventuelles solutions.
    Merci de ton aide

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

Discussions similaires

  1. J'ai des soucis avec Delphi8 ShellExecute...
    Par manu00 dans le forum Delphi .NET
    Réponses: 6
    Dernier message: 25/07/2004, 08h38
  2. shellexecute + chemin avec espace
    Par abignon dans le forum MFC
    Réponses: 2
    Dernier message: 26/01/2004, 22h15
  3. test de l'exectuion d'un bat par Shellexecute
    Par Argonz dans le forum C++Builder
    Réponses: 8
    Dernier message: 10/12/2003, 08h18
  4. Ouvrir le poste de travail (avec ShellExecute) ?
    Par benj63 dans le forum C++Builder
    Réponses: 4
    Dernier message: 17/08/2003, 11h09
  5. Réponses: 2
    Dernier message: 18/11/2002, 09h12

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