Bonjour à tous
@ Ar_s et falsam
Vous avez très certainement utilisé la sortie de debug pour contrôler ou pour réaliser un fichier html
Et là il faut bien reconnaitre qu’il y a un pb
En effet la sortie sur console par printn et la sortie avec debug ne sont pas identiques avec webgadget
Test_printn fait exactement 14525 assez stable en fonction des différents tests
Test_debug fait moins de 14525 octets cette longueur peu variée en fonction des différents essais
Remarques :
1) il y a un pb avec l’instruction debug pour des chaines de caractères et l’utilisation de webgadget
2) Pour être sûr que les fichiers html sortie des programmes de falsam et du mien sont parfaitement corrects, j’ai modifié le premier Prg de falsam pour d’une part lui faire une sortie sur printn et d’autre part une sortie directe sur un fichier Test_Fal.html
et j’ai fait de même pour le mien.
3) Pour faire le tour de la question j’ai modifier le dernier prg de falsam pour réaliser un debug.
Et horreur le fichier ainsi réalisé est correct.
4) Question pourquoi debug utilisé dans les prg avec un webgadget donne des résultats faux
Alors que celui issu du dernier prg de falsam est correct
5) Les trois programmes donnent les mêmes résultats en fichier html mais pour le deux prg avec webgadget il est impossible de lancer un RunProgram("TEST_FAL.html")
Ou RunProgram("TEST_PP.html
Allez dans le répertoire des sources pour tester les deux fichier html
Voici les deux prg de falsam et le mien modifiés pour réaliser les essais. Ils sont dans l'ordre chronologique
Code : Tout sélectionner
OpenConsole("resultat")
CreateFile(0,"TEST_FAL.html")
If OpenWindow(0,0,0,600,300,"WebGadget",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(1,10,10,580,280,"http://www.purebasic.com")
Repeat
Event=WaitWindowEvent()
GEvent=EventGadget()
TEvent=EventType()
Select Event
Case #PB_Event_Gadget
Select GEvent
Case 1
Select TEvent
Case #PB_EventType_DownloadEnd
Resultat$=GetGadgetItemText(1,#PB_Web_HtmlCode)
PrintN(Resultat$)
Debug Resultat$
WriteString(0,Resultat$,#PB_UTF8)
EndSelect
EndSelect
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
EndIf
CloseConsole()
CloseFile(0)
; Delay(1000);
; RunProgram("TEST_FAL.html")
Code : Tout sélectionner
OpenConsole("resultat")
CreateFile(0,"TEST_PP.html")
If OpenWindow(0,0,0,1250,850,"WebGadget",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(1,10,10,1200,800,"http://www.purebasic.com")
dep.q=ElapsedMilliseconds()
flag=0
; PrintN(_n(#PB_Web_HtmlCode))
; Resultat$=GetGadgetItemText(1,#PB_Web_HtmlCode)
Resultat$=GetGadgetItemText(1,#PB_Web_HtmlCode )
dlres=Len(resultat$)
Repeat
Delay(10)
Resultat$=GetGadgetItemText(1,#PB_Web_HtmlCode)
lres=Len(resultat$)
; Debug _n(lres)+_n(mlres)+_n(flag)
If lres=mlres And flag=0 And lres>dlres
Resultat$=GetGadgetItemText(1,#PB_Web_HtmlCode)
Resultat$=GetGadgetItemText(1,#PB_Web_PageTitle )+Resultat$
Resultat$+GetGadgetItemText(1,#PB_Web_StatusMessage )
PrintN(Resultat$)
Debug Resultat$
WriteString(0,Resultat$,#PB_UTF8)
; Debug _n(ElapsedMilliseconds()-dep)
flag+1
; PrintN( Str(ElapsedMilliseconds()-dep))
EndIf
mlres=lres
Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
CloseConsole()
CloseFile(0)
; RunProgram("TEST_PP.html")
Code : Tout sélectionner
InitNetwork()
If Not ReceiveHTTPFile("http://www.purebasic.com", "test.html")
Debug "Ooops : Souci de réception "
End
EndIf
If ReadFile(0, "test.html")
While Not Eof(0)
Debug ReadString(0)
Wend
EndIf
;Juste pour voir
RunProgram("test.html")
OpenFile(0,"test.html",#PB_File_SharedRead )
resultat$=ReadString(0, PB_Ascii )
; resultat$=ReadString(0, #PB_UTF8)
Debug resultat$
CloseFile(0)
A+