Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4963 connectés 

 


Dernière réponse
Sujet : SVP, un petit bout de C pour...
antp 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]


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
antp 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]

Ttienne

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:

seblamb pour faire ça il faut regarder du coté de ShellExecute ( avec l'option "print" )
Ttienne :??: J'ai cru que j'étais dans le forum programmation. Excusez-moi. :??:
SoWhatIn22 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!
Ttienne vous imprimez jamais, vous, dans vos programmes C ? :cry:
Ttienne 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:
seblamb 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.
seblamb Il y
Ttienne ... 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.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)