SVP, un petit bout de C pour...

SVP, un petit bout de C pour... - Programmation

Marsh Posté le 28-03-2001 à 14:10:19    

... imprimer un fichier texte tout con sur l'imprimante par défaut de windows... ca existe ? parce que je comprends rien à la manière dont il faut s'y prendre, j'ai maté ma doc, chui tombé sur la structure PRINTDLG et sur le cul ! Mon imprimante à moi, par exemple, est sur un petit serveur d'impression.

Reply

Marsh Posté le 28-03-2001 à 14:10:19   

Reply

Marsh Posté le 28-03-2001 à 14:12:10    

Il y

Reply

Marsh Posté le 28-03-2001 à 14:13:41    

Je recommance : il y a une fonction qui remplis cette structure
avec les param par defaut de ton imprimante.  
Recherche sur msdn.microsoft.com, je crois même qu'il y a un  
example.

Reply

Marsh Posté le 28-03-2001 à 14:49:51    

Oui je sais c'est PrintDlg()... :jap:
 
Mais je veux juste imprimer du texte !!! J'ai pas besoin de savoir le nombre de pixel horizontal et vertical, centrer, justifier, etc. Non ! Sous unix tu fait system( "lp toto.txt" );
et l'affaire est baclee ! Mais là, il faudrait que je calcule le positionnement de chaque ligne de texte, que je calcule moi-meme si ca tient sur une ligne, faire à la main les retours chariot que toute imprimante fait automatiquement ? C'est de la folie ! Je ne peux pas passer une semaine à écrire l'impression d'un fichier texte ascii ! :pt1cable:

Reply

Marsh Posté le 28-03-2001 à 15:04:28    

vous imprimez jamais, vous, dans vos programmes C ? :cry:

Reply

Marsh Posté le 28-03-2001 à 15:12:56    

ben sous windows, pour imprimer, moi j'appuie sur le bouton ou il y a une imprimante qui est dessinée, et ca imprime. J'ai pas besoin d'en savoir plus!

Reply

Marsh Posté le 28-03-2001 à 15:16:52    

:??: J'ai cru que j'étais dans le forum programmation. Excusez-moi. :??:

Reply

Marsh Posté le 28-03-2001 à 15:23:39    

pour faire ça il faut regarder du coté de ShellExecute ( avec l'option "print" )

Reply

Marsh Posté le 28-03-2001 à 15:38:55    

seblamb a écrit a écrit :

pour faire ça il faut regarder du coté de ShellExecute ( avec l'option "print" )


Beni sois-tu, toi et tes descandants, et qu'il en soit ainsi jusqu'à la septième génération. :jap:

Reply

Marsh Posté le 28-03-2001 à 16:27:31    

Un truc que j'ai utilisé dans un programme (c pas beau mais bon)
 
CPrintDialog prn(TRUE, PD_NOPAGENUMS | PD_NOSELECTION | PD_USEDEVMODECOPIES | PD_HIDEPRINTTOFILE);
if(prn.DoModal() == IDOK) {
  if(ShellExecute(0, "open", "wordpad.exe", "/pt \"" + "fichier.txt" + "\" " + prn.GetDeviceName(), 0, SW_MAXIMIZE) <= (HINSTANCE)32)  {
     ShellExecute(0,0,"fichier.txt",0,0,SW_MAXIMIZE);
            // on ouvre le fichier.txt si jamais wordpas n'a pas su être lancé
   }
}
 
... on fait appel à WordPad pour imprimer le fichier.txt :D
Ici on affiche la boîte de dialogue de choix d'imprimante, et WordPad imprime sur l'imprimante sélectionnée (passée en ligne de commande)

 

[edit]--Message édité par antp--[/edit]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed