Imprimer en C

Maryy -  
 Maryy -
Bonjour !

Je souhaiterai envoyer certaines infos de mon programme en C vers l'imprimante. Comment dois-je m'y prendre pour les imprimer ?

Merci !

Maryy
A voir également:

6 réponses

Mike
 
quel prog utilise tu pour faire tes progs en c?
Borland?
0
Maryy
 
Non, j'utilise visual c++ 6
0
ouartil Messages postés 59 Date d'inscription   Statut Membre Dernière intervention   1
 
salut, ce que je sais est que le c utilise l'ecran comme sortie standart pour imprimer, pour ton imprimante tu dois voir comment changer ça.
0
Maryy
 
Salut !

Je sais bien mais c'est ce que je cherche à faire, sans succès pour le moment.

@+ !
0
tafiscobar Messages postés 1277 Date d'inscription   Statut Contributeur Dernière intervention   177
 
marry, t'as reçu le fichier q je t'ai envoye? t'as pas trouve ce q tu cherchais dessus?
tafiscobar
0
Maryy
 
Il faut que je l'essaie en C. Je le vois demain et je te dis si j'ai réussi à le faire marcher ou non.

@+ ! :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tafiscobar Messages postés 1277 Date d'inscription   Statut Contributeur Dernière intervention   177
 
marry, j'ai trouve ces commandes pour imprimer :
#include<stdio.h>//je l'ai trouve ds le forum de cppfrance.com
void main()
{
fprintf(stdprn,"texte a imprimer");
fprintf(stdprn,"\f");
return 0;
}

pour envoyer juste des donnees a l'imprimante :

outport(port,valeur);//port en serie
tafiscobar
0
Maryy
 
Bonjour !

J'ai la même solution dans mon bouquin en fait mais mon compilo me sort en erreur. Il reconnaît pas le stdprn et il me dit que le format de fprintf n'est pas bon.

Dur dur !
0
tafiscobar Messages postés 1277 Date d'inscription   Statut Contributeur Dernière intervention   177 > Maryy
 
voila moi aussi j'utilise VC++ 6 et j'ai regarde ds le msdn 6, t'as ces fonctions qui permettent d'ecrire ds le port specifie en argument par contre tu dois faire une boucle car elles ne font qu'ecrire caractere par caractere ou mot par mot ou double mot par double mot respectivement , les voici :

_outp(unsigned short port, int databype);
_outpw(unsigned short port, unsigned short dataword );
_outpd(unsigned short port, unsigned long dataword);

en fait je pense q la norme C++ n'a pas specifiee de fonctions pour gerer l'impression et q chaq compilateur l'a gere lui-m , car j'ai le tutoriel de Catherine Casteyde mais elle n'y a parle ni de stdprn ni des fonctions de VC++ ie _outp,_outpw et _outpd.

T'as aussi cette fonction de la classe CWnd :
CWnd::Print(CDC *pdc, DWORD dwflags) const;

pdc est un pointeur sur un periferiq (device context coe une imprimante)
dwflags prend ces valeurs suivantes :(je fais copie coller, je te laisse traduire )
dwFlags

Specifies the drawing options. This parameter can be one or more of these flags:
PRF_CHECKVISIBLE Draw the window only if it is visible.
PRF_CHILDREN Draw all visible children windows.
PRF_CLIENT Draw the client area of the window.
PRF_ERASEBKGND Erase the background before drawing the window.
PRF_NONCLIENT Draw the nonclient area of the window.
PRF_OWNED Draw all owned windows

Si rien n'est bon eh bien essaies ce qui se trouve sur le fichier q je t'ai envoye(peut etre q ca marchera).
tafiscobar
0
Maryy > tafiscobar Messages postés 1277 Date d'inscription   Statut Contributeur Dernière intervention  
 
Ouhlà tout ça me parait bien barbare ! Mais c'est un prog en C que je fais, je peux insérer des fonctions c++ ? Enfin, euh... ce week end, je vais y regarder d'un peu plus près parce que je suis pas sûre de tout comprendre là ! :)
0
shandrani Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
voici un petit programme en C pour l'impression.

tu dois inclure:
#include <stdlib.h>

while ((c = fgetc(fp)) != EOF) /* impression du fichier */
fputc(c, stdprn);

cette boucle sortira sur l'imprimante un texte saisi au clavier.
la variable c représente le nom du fichier.


/* printfl imprime un fichier dont le nom provient de la ligne de commande */

#include <stdio.h> /* printf, fopen, fgetc, fputc */
#include <stdlib.h> /* exit */

main(int argc, char **argv)
{
FILE *fp;
int c;
if (argc != 2) /* un seul paramètre ! */
{
printf("Syntaxe : printfl fichier\n");
exit(1);
}
if ((fp = fopen(argv[1], "r")) == NULL)
{
printf("Impossible d'ouvrir le fichier %s.\n", argv[1]);
exit(2);
}
while ((c = fgetc(fp)) != EOF) /* impression du fichier */
fputc(c, stdprn);
}
0
Maryy
 
Merci pour le tuyau ! ;)
0