Probleme etrange Imprimante USB/programme GUI-GDI

Résolu
cs_bbear Messages postés 92 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 29 mai 2008 - 2 sept. 2006 à 16:02
MuPuF Messages postés 536 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 22 août 2008 - 2 sept. 2006 à 20:03
un truc à devenir fou...
j'ai fait un petit jeu dans une fenetre windows (CreateWindowEx...), le truc banal
affichage en utilisant le GDI, les touches du clavier, etc...
une dialog box pour un "about", un icone dans le systray, lecture d'un fichier hiscore
et une deuxieme version avec un TaskBar Notifier et un debut de reseau
je plante le décor, car c'est vraiment etrange.
peu importe la version que j'utilise (avec/sans reseau, sans taskbar notifier, sans systray...)
(la version reseau n'envoi encore aucune donnée et ne se connecte pas au demarrage)

si je lance une impression sur mon imprimante usb, et que je lance mon programme, je me retrouve avec une "Erreur d'impression" qui apparait (sur l'icone systray du spooler) !!!!
c'est la premiere fois que ça me le fait, alors que c'est pas le premier programme (j'utilise toujours le meme startup, et aucun autre prog ne fait ça)

le programme etant assez gros, je ne peux pas le poster comme ça
si quelqu'un a une idée ou des pistes de recherche, je peux poster des morceaux
mais pour le moment, vraiment je ne comprend pas

merci d'avance car là, je sèche completement

6 réponses

MuPuF Messages postés 536 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 22 août 2008
2 sept. 2006 à 19:04
Je pense que tu as un problemes d'écriture aléatoire à la ram, ça n'a strictement rien à voir avec la taille de ton exe.
Tu utilises des fonctions d'impression dans ton programme ? Essais de me le décrire un peu plus

MuPuF, pour vous servir
http://programmeur.fou.free.fr
3
cs_bbear Messages postés 92 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 29 mai 2008
2 sept. 2006 à 20:01
Oïe... je crois avoir compris le probleme de la sauvegarde ! vu sous un autre angle, je vois une erreur...glop...ça resquait pas de sauvegarder grand chose...


elle ne sauvegarde pas le contenu mais les adresses des variables...


satané chaines de caracteres et pointeurs!
3
MuPuF Messages postés 536 Date d'inscription mercredi 27 avril 2005 Statut Membre Dernière intervention 22 août 2008
2 sept. 2006 à 20:03
Ah ben forcement, la référence vers un pointeur, c'est de trop

/*****************************
*** MuPuF®, pour vous servir ***

*** http://programmeur.fou.free.fr ***
*****************************/
3
cs_bbear Messages postés 92 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 29 mai 2008
2 sept. 2006 à 16:17
ps: c'est apparu avec l'impression d'une image.
hmmm...ça ne le fait pas avec une imprimante parallele (du moins celle que j'ai), et si le spooler est fermé (fin de transfert)
un probleme de memoire ? ou juste avec une imprimante Brother usb ? (...)
0

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

Posez votre question
cs_bbear Messages postés 92 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 29 mai 2008
2 sept. 2006 à 18:37
je me repond : ça a l'air d'être un probleme de mémoire
mais c'est quand meme grave qu'on ne puisse pas imprimer une image et lancer un programme de 500ko en même temps avec 800 Mo de ram, bordel !
(vive l'Amiga)
0
cs_bbear Messages postés 92 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 29 mai 2008
2 sept. 2006 à 19:20
"fonctions d'impression" ? euh... sprintf, printf?? ou une redirection vers une imprimante ? en tout cas mon programme n'utilise pas d'imprimante.
j'ecris avec une font bitmap (quelques sprintf pour mettre en forme avant affichage avec le writer bitmap)

et il y a une lecture de fichier binaire au demarrage (bon là j'avoue que je crois avoir un probleme avec mon fichier hiscore : quand j'ajoute quelques routines ou données au programme, il n'est plus capable de relire un ancien fichier hiscore...- cf. plus bas)


le bug apparait quasi au demarrage, ou quelques secondes après, si et seulement si le spooler est ouvert

pourquoi quand j'imprime la même image avec une imprimante parallele, je n'ai pas ce bug ??


<hr />
à propos du bug load/save binaire fichier hiscore voilà le prog :

unsigned long toptenscores[]={
1000000, ..., 0 (10 valeurs)
};

char *toptennames[]={
"NOM.....", ... (10 noms. taille 25 caracteres)
};

BOOL SaveScore()
{
 unsigned char i;
 FILE *hfile; // ouvre le fichier en mode ecriture binaire
 hfile=fopen("hiscores.dat","w+b");

 if(!hfile) return FALSE; // prout

 for(i=0;i<10;i++)
 {
  fwrite(&toptenscores[i],sizeof(char),sizeof(unsigned long),hfile);
  fwrite(&toptennames[i],sizeof(char),25,hfile);
 }

 fclose(hfile);

 // ok
 return TRUE;
}

void LoadScore()
{
 unsigned char i;
 FILE *hfile;

 // ouvre le fichier en mode lecture binaire
 hfile=fopen("hiscores.dat","r+b");
 if(!hfile) return; // pas de fichier hiscore

 // on lit les variables dans le fichier
 for(i=0;i<10;i++)
 {
  fread(&toptenscores[i],sizeof(char),sizeof(unsigned long),hfile);
  fread(&toptennames[i],sizeof(char),25,hfile);
 }

 fclose(hfile);
 return;
}
0
Rejoignez-nous