Recuperer imprimante selectionnee

Résolu
Tank01 Messages postés 106 Date d'inscription lundi 4 août 2003 Statut Membre Dernière intervention 10 novembre 2006 - 13 juin 2006 à 09:21
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 - 13 juin 2006 à 10:33
Bonjour,

Je suis entrain d'implémenter dans un programme, une procedure qui doit lancer un impression. ( jusque la, tout va:d)

Avant de lancer cette impression, je passe par la boite de dialogue ( PrintDialog.execute; ), afin que l'utilisateur puisse choisir l'imprimante qu'il souhaitera utiliser.
Je souhaiterais tout simplement que cette imprimante soit affichée dans une string, ou mieux, dans un fichier Texte.
Voici mes pistes :

        assignfile(PeriphPrint,'C:\printer.txt'); // création du fichier texte printer.txt
        Rewrite(PeriphPrint); // ouverture du fichier en écriture
        PrintDialog.execute;  //affichage de la boite de dialogue Imprimante // Jusqu'ici, tout ce passe bien !!!
        printer.GetPrinter(); // Ceci permet de recevoir l'imprimante Choisie, mais je n'arrive pas à l'utiliser :s:s
        Writeln(PeriphPrint,printerr.GetPrinter);// Ensuite écrire l'imprimante Choisie et l'écrire dans le fichier texte.
        closefile(PeriphPrint); // Fermeture du fichier.

Voila, comme vous l'avez vu, la seule chose qui me pose problème est le printer.GetPrinter.

Si quelqu'un a une idée à ce sujet :!!!!!

----( | TanK | )---- 

1 réponse

cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
13 juin 2006 à 10:33
Salut, c'est pas trop méchant, juste un transtypage PAnsiChar -> String




var

  Device,Port,Driver : PAnsiChar;
  Mode : THandle;
  LeNomDeMonImprimante : String;
begin
  Device := StrAlloc(256); // Réservation de place pour les PChar
  Driver : = StrAlloc(256);
  Port := StrAlloc(256);
  if PrintDialog1.Execute then
  begin
    Printer.GetPrinter(Device,Driver,Port,Mode);
    LeNomDeMonImprimante : = String(Device);  // transtypage
  end;
  StrDispose(Device);  // libération
  StrDispose(Driver);
  StrDispose(Port);
end;








Ken@vo




<hr size ="2" width="100%" />



Code, Code, Codec !






[%3C/body
]
3
Rejoignez-nous