bonjourcheval
Messages postés228Date d'inscriptionmercredi 13 décembre 2000StatutMembreDernière intervention 8 août 2011
-
15 juil. 2008 à 19:33
gillardg
Messages postés3275Date d'inscriptionjeudi 3 avril 2008StatutMembreDernière intervention14 septembre 2014
-
14 août 2008 à 16:41
Je ne comprends pas pourquoi, mais ce bug n'arrive jamais sur mon poste, seulement sur celui des autres.
Il est arrivé la première fois que j'avais essayé un .exe sans installation sur un autre poste.
Ensuite, après l'installation complete, il a fonctionné correcter pendant peut-être 1 heure, puis, quand on l'a réouvert, le bug était là. Apres un redémarrage, le bug a redisparu pour environ 1 heure pour revenir.
Dans mon code, j'utilise l'API AddFontRessource/RemoveFontRessource, est-ce que ça pourrait etre lier???
Sinon, avez des idées do où pourrait provenir ce bug??
bonjourcheval
Messages postés228Date d'inscriptionmercredi 13 décembre 2000StatutMembreDernière intervention 8 août 2011 15 juil. 2008 à 19:53
Exactement, mais j'ai placé ma font dans le fichier ressource avec le code suivant :
Public Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA" _
(ByVal lpFileName As String) As Long
Private Sub LoadRes()
Dim maFont() As Byte
Dim intCanal As Integer
NomFichier$ = App.path & "\Font.ttf"
intCanal = FreeFile
Open NomFichier$ For Binary As #intCanal
maFont = LoadResData(103, "CUSTOM")
Put #intCanal, , maFont
Close #intCanal
AddFontResource NomFichier
End Sub
Et ma font est visible quand le programme ne tombe pas en affichage étrange.
Quand le programme tombe en affichage étrange, tout le programme devient étrange aussi. Toutes les listes deviennent plus grandes et il y a du blanc partout dans mes pages, comme le montre le screen shot
bonjourcheval
Messages postés228Date d'inscriptionmercredi 13 décembre 2000StatutMembreDernière intervention 8 août 2011 15 juil. 2008 à 22:53
Pourtant, ma police s'affiche tres bien sur d'autres postes avec mon addFontRessource.
Seulement, pour une raison inconnue, l'affichage devient étrange quelques fois.
Mais sinon, si je met ma font dans mon setup, reste à voir si ça règlerait le problème.
Je vais faire des tests et reposter.
Si vous avez d'autres idées pourquoi ça bug, n'hésitez pas de l'écrire ici!!!
Soyez pas gêné, personne rira de vous même si vous dites que c'est un bug du compilateur. xD
Vous n’avez pas trouvé la réponse que vous recherchez ?
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 16 juil. 2008 à 05:45
salut,
d'après la capture la liste est effectivement plus grande.
as-tu modifié par code sa taille selon la taille de la typo?
as-tu déclaré initcommoncontrols? (çà pourrait être une idée)
ton addfont se fait bien une seule fois et pas à chaque ouverture de form?
ton removefont en sortie est bien placé et bien propre? (vérifie le retour de l'API)
il n'y a bien qu'une seule instance de ton prog à la fois?
plus de détails sur les PC (OS, SP, droits, versions runtimes)
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
bonjourcheval
Messages postés228Date d'inscriptionmercredi 13 décembre 2000StatutMembreDernière intervention 8 août 2011 16 juil. 2008 à 15:02
Premierement, je ne modifie aucun control par programmation. La seule modification que j'effectue c'est changer la police.
maList.FontName = "Excalibur MonoSpace" ---> Pas d'erreur de frappe 100% certain
Mon addfont se fait dans mon sub main avant le chargement de la page principale et mon remove font/kill se fait dans le terminate de ma page principale.
'La page principale de mon application. Si elle ferme, c'est que l'application fermer
Private Sub Form_Terminate()
RemoveFontResource CheminFont 'CheminFont = l'emplacement où est ma font
Kill CheminFont
End Sub
Il est possible que l'usage en ait ouvert 2 en meme temps, mais j'ai déjà eu le bug en l'ouvrant 1 seule fois (la premiere fois que l'app s'ouvrait sur le poste)
Après une recherche sur MSDN :
InitCommonControls Function
<!--Content type: SDKML. Transform: wc2mtps.xslt.-->
Registers and initializes certain common control window classes. This function is obsolete. New applications should use the InitCommonControlsEx function.
Je vais tester la fonction et reposter les résultats.
Et je tiens à resouligner que ce bug n'est jamais arrivé sur mon poste.
Tous les postes sont sous windows XP SP2
J'utilise VB6 SP6 et j'utilise l'assistant d'empaquetage pour créer mon setup.exe
Pour ce qui est des droits, je suis admin sur mon poste et le bug est arrivé autant sur un poste admin que sur un poste qui ne l'est pas.