Imprimer en C

Fermé
Maryy - 12 févr. 2002 à 11:28
 Maryy - 16 févr. 2002 à 17:10
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

quel prog utilise tu pour faire tes progs en c?
Borland?
0
Non, j'utilise visual c++ 6
0
ouartil Messages postés 59 Date d'inscription mercredi 20 juin 2001 Statut Membre Dernière intervention 10 août 2003 1
12 févr. 2002 à 19:09
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
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 jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
13 févr. 2002 à 22:37
marry, t'as reçu le fichier q je t'ai envoye? t'as pas trouve ce q tu cherchais dessus?
tafiscobar
0
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 jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
14 févr. 2002 à 22:11
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
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 jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177 > Maryy
15 févr. 2002 à 13:32
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 jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009
15 févr. 2002 à 14:07
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 samedi 9 février 2002 Statut Membre Dernière intervention 15 février 2002
15 févr. 2002 à 21:54
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
Merci pour le tuyau ! ;)
0