begin process at 2010 02 09 05:13:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Autre

 > 

Mon programme fait planter windows !


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mon programme fait planter windows !

jeudi 8 janvier 2009 à 23:33:32 | Mon programme fait planter windows !

Lustuc

Bonjour,

J'ai fait un programme d'analyse graphique, qui tourne en boucle (volontairement), mais au bout d'une dizaine de minute, l'écran de mon PC devient entièrement blanc, avec de temps en temps un morceau d'application qui apparaît puis disparaît l'instant d'après. Je suis obligé de rebouter le PC.

C'est comme si mon programme avait saturé la mémoire. Est-ce possible? Sachant que les variables utilisées occupent peu de place, la plus importante est une table à 2 dimension 10 caractères sur 20.

Si quelqu'un a une idée, ça me serait d'un grand secours...

vendredi 9 janvier 2009 à 02:26:22 | Re : Mon programme fait planter windows !

racpp

Administrateur CodeS-SourceS
Salut,
Il serait préférable de nous montrer le code de la boucle. Il pourrait s'agir de fuites qui s'accumulent.
vendredi 9 janvier 2009 à 11:23:18 | Re : Mon programme fait planter windows !

ed73

Bonjour,

Ce sont les symptomes classiques d'une mauvaise libération de ressources GDI (DC, Pen, Brush, ...) dans ta fonction d'affichage.

ed73

vendredi 9 janvier 2009 à 16:34:44 | Re : Mon programme fait planter windows !

uaip

Salut,
Sans doute, oui. Un topic parlant du même problème a été résolu il n'y a pas si longtemps. Mais en effet un bout de code serait cool.

Cordialement, uaip.
vendredi 9 janvier 2009 à 21:21:09 | Re : Mon programme fait planter windows !

Lustuc

Merci pour vos réactions.

Hélas je ne peux pas vous donner ma boucle, non pas que je ne veuille pas, mais il s'agit d'une boucle géante. La boucle principale (dans la fonction main) doit faire 5 pages word et elle fait appelle à 8 fonctions qui chacune font entre 1 et 7 pages word.

Vue que ça plantait mon PC, pour garder une trace le programme écrit un fichier texte au fur et à mesure de son exécution, et il ne plante jamais au même endroit.

uaip, je me lance à la recherche du topic dont tu parles, si tu tombe dessus, pense à moi :)


ed73, y a t-il un remède pour "libérer de la ressource"?

merci encore, lustuc

vendredi 9 janvier 2009 à 21:40:10 | Re : Mon programme fait planter windows !

uaip

Euh ben je l'avais lu ya pas si longtemps, mais les fuites de mémoire venaient d'une mauvaise libération des ressources (HPEN, HBRUSH, etc) comme le dit ed73.

Cordialement, uaip.
vendredi 9 janvier 2009 à 22:24:30 | Re : Mon programme fait planter windows !

ed73

Oui il y a un remède pour libérer de la ressource, c'est une des règles de base de la programmation : Toujours penser à libérer les objets ou ressources qu'on a alloués.

new -> delete
hPen = CreatePen (...) -> DeleteObject(hPen)
hBrush = CreateSolidBrush(...) -> DeleteObject(hPen)
hDC = GetDC(...) -> DeleteDC(hDC)
BeginPaint(...) -> EndPaint(...)
etc...

Il ne faut pas détruire une ressource si elle est sélectionnée dans un DC.

erd73
samedi 10 janvier 2009 à 11:16:46 | Re : Mon programme fait planter windows !

Lustuc

En gros mon programme est constitué d'une succession de :

hdc = GetDC(handle);
color = GetPixel(hdc, cursor.x, cursor.y);
ReleaseDC(handle,hdc);
traitements des infos (while, for, if...)
lecture /écriture dans un fichier texte (fopen, fscanf, fprintf, fclose)
ecriture en console printf

hormis le GetDC, je ne vois pas ce qui nécessite d'être libéré....

si quelqu'un a une idée...

samedi 10 janvier 2009 à 12:09:22 | Re : Mon programme fait planter windows !

uaip

ed73, new / delete, c'est du C++. En C ça sera malloc() / free().
Dis comme ça Lustuc, en effet je ne vois pas.

Cordialement, uaip.


Cette discussion est classée dans : programme, pc, windows, temps, planter


Répondre à ce message

Sujets en rapport avec ce message

Démarage de windows [ par Fuckly94 ] Bonjour tout le monde,j'aimerais savoir tous les myen de lancer une application au démarage de windows.Je m'explike:Mon frére lance pa mal de connerie programme echoué sur un autre pc [ par shadow1779 ] Bonjour,J'ai un probleme sous windows avec tout les programmes consoles que je crée, si moi je les lancent il n'y a aucun probleme, mais si je les tra windows rencontre un probleme [ par parain74 ] Bonjour, j'ai écrit un programme en c via labwindows, lorsque je lance mon programme, de temps en temps windows me met le fameux message "windows a re [API] Programme a coté de l'horloge [ par AMS010 ] Bonjour, Je programme depuis quelques temps sous l'API windows, et je me demandais comment pouvait-on mettre notre programme dans la barre de tache dè Gérer un programme devant tourner sur 1 PC avec 2 écrans ??? [ par nascimo ] Bonjour, je dois programmer une appli sur 2 écrans (une fenêtre pour chaque écran). Ces 21 écrans étant bien sur reliè au même PC. Je suis sous borlan Temps d'execution d'un programme [ par abdoulax ] Bonjour,J'ai besoin de mesurer le temps d'éxecution d'un bou de code pour comparer les performances d'execution en fonction de la plateforme: windows, windows/svchost.exe [ par katalote ] Bonjour,je souhaiterai de l'aide car je debute quand mon pc demarre il m'affiche un message me disant qu'il ne trouve pas le fichier windows/svchost.e Image BMP [ par jeanphilippe37 ] Bj, je voudrais mettre dans un programme en C 1 ou plusieurs images. Dans le mode "windows" ( différent du mode console). Comment dois-je faire ? acquisition de données via la carte son du pc [ par tatronic ] bonjour à vous!  je voudrais utiliser la carte son  du pc comme convertisseur analogique-numérique afin de prélever un signal que j'injecte à son entr utiliser le temps ds un programme [ par Bousyass ] Salut, je suis entrain de programmer avec le turbo C. je veux utiliser un chrono pour donner a l'utilisateur un delai a ne pas dépasser pour introduir


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales