Quelqu'un comprand-il pourquoi ça ne marche pas ?
Publié : mar. 09/août/2005 12:52
Bonjour,
Dans le code suivant, j'ai une erreur dès que je clique sur le bouton "Whois". J'ai voulu me tester à la librairie OnError, donc il est possible de voir où ça bug. à paramant, ça bug à la ligne 29 qui n'est qu'un GetGadgetText(), puis ça bug plain de fois après à la ligne 3 qui est le ProcedureReturn de la procédure d'événement.
Voilà le code.
Merci d'avance pour votre aide.
Dans le code suivant, j'ai une erreur dès que je clique sur le bouton "Whois". J'ai voulu me tester à la librairie OnError, donc il est possible de voir où ça bug. à paramant, ça bug à la ligne 29 qui n'est qu'un GetGadgetText(), puis ça bug plain de fois après à la ligne 3 qui est le ProcedureReturn de la procédure d'événement.
Voilà le code.
Code : Tout sélectionner
Procedure OnError()
If MessageRequester("Erreur","Une erreur est survenue."+#CRLF$+"Ligne : "+Str(GetErrorLineNR())+#CRLF$+"Numérot de l'erreur : "+Str(GetErrorNumber()) + #CRLF$+"Description : "+GetErrorDescription()+#CRLF$+"à l'adresse : "+Str(GetErrorAddress())+#CRLF$+"Voulez-vous interrompre le programme ?",#PB_MessageRequester_YesNo|#MB_ICONEXCLAMATION) = #IDYES
ProcedureReturn 0
Else
ProcedureReturn 1
EndIf
EndProcedure
If InitNetwork() = 0
OnErrorResume()
MessageRequester("Erreur","Erreur lors de l'initialisation de l'environement réseau (TCP/IP).",#MB_ICONSTOP)
End
EndIf
If OpenWindow(0,0,0,503,86,#PB_Window_ScreenCentered | #PB_Window_SystemMenu | #PB_Window_TitleBar,"Whois (Domaine libre ?)") = 0 Or CreateGadgetList(WindowID()) = 0
OnErrorResume()
MessageRequester("Erreur","Erreur d'initialisation.",#MB_ICONSTOP)
End
EndIf
OnErrorGosub(@OnError())
TextGadget(0,3,3,100,20,"Domaine :")
StringGadget(1,100,3,300,20,"")
ButtonGadget(2,400,3,100,20,"Whois")
TextGadget(3,3,20,100,20,"Informations :")
EditorGadget(4,100,20,400,60)
SendMessage_(GadgetID(4),#EM_SETREADONLY,1,0)
Editor_AutomaticLine(4,1)
SetGadgetText(4,"lol voilà un exemple de ce que l'on peut mettre ici."+#CRLF$+"Je ne sais pas ce que l'on peut en penser, mais c'est là à titre d'exemple donc c'est pareil même si vous êtes pas contents !"+#CRLF$+#CRLF$+"Note : Ce texte est en lecture seule, vous ne pouvez donc pas l'effacer.")
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadgetID()
Case 2
DefType.s Path,Sufix,Domaine,Serveur
Path = GetProgramPath()
PathAddBackslash_(Path)
PathAppend_(Path,"Whois.ini")
Domaine = GetGadgetText(1)
Sufix = GetExtensionPart(Domaine)
OpenPreferences(Path)
; PreferenceGroup("Sufixes")
Serveur = ReadPreferenceString(Sufix,"")
ClosePreferences()
If Serveur = ""
SetGadgetText(4,"Aucun serveur pour les domaine à l'extention ."+Sufix)
EndIf
EndSelect
Case #PB_Event_CloseWindow
End
EndSelect
Delay(20)
ForEver
End