also deine getfullpath()-procedure funktioniert ja, und das programm hängt sich ja nur auf, wenn der parameter irgendwas anderes ist als deine 3 funktionen
du speicherst das window-handle ja in einer datei ab, bist du dir sicher, dass dieses handle beim lesen immer aktuell ist? (ich dachte nur das hat in deinem code auch was mit den parametern zu tun)
vielleicht stimmt auch einfach die reihenfolge deiner abarbeitung nicht, weil wenn das programm korrekt gestartet wird, ist ja erst ein profil auszuwählen. wenn ich das programm aber mit url-parameter starte, wird die scheinbar profilauswahl umgangen, der browser startet und es wird auch ein mdi-child-fenster geöffnet, aber ohne die entsprechende seite anzuzeigen.
..ne halt, die profil-auswahl kommt doch, aber es wird schnell automatisch weitergesprungen.
vielleicht hängt er ja hier:
Code: Alles auswählen
Repeat
Item=RandomValue(#FirstWeb,9999)
If IsWindow(Item)=#False And IsGadget(Item)=#False
Close=#True
Else
Close=#False
EndIf
Until Close=#True
zumal deine randomvalue() etwas ulkig ist (aber sie funktioniert):
Code: Alles auswählen
Procedure.l RandomValue(Minimum,Maximum)
Value=Random(Maximum)
If Value<Minimum
Value=RandomValue(Minimum,Maximum)
EndIf
ProcedureReturn Value
EndProcedure
könntest du besser so machen:
Code: Alles auswählen
Procedure.l RandomValue(Minimum,Maximum)
ProcedureReturn Random(Maximum-Minimum)+Minimum
EndProcedure
weiß auch nich so richtig, vielleicht wird Url$ oder so an irgendeiner stelle unwissentlich verändert. was passiert denn, wenn AddPage() eine ungültige url erhält? ich würde diese funktion mal mit debugger ausgaben überprüfen und gucken was bei parametern passiert:
Code: Alles auswählen
Procedure AddPage(Url$)
Debug "##### in AddPage() #####"
Debug "Url$ : "+Url$
Select LCase(Url$)
Case "help:"
AddPage(Config\MainPath+"Help\Index.html")
Case "about:"
About()
Default
Title$=GetPageTitle(Url$)
Debug "Title : "+Title$
Debug "...repeat.."
Repeat
Item=RandomValue(#FirstWeb,9999)
;Debug "Item : "+Str(Item)
If IsWindow(Item)=#False And IsGadget(Item)=#False
Close=#True
Else
Close=#False
EndIf
Until Close=#True
Debug "Close : "+Str(Close)
x_y_z=OpenGadgetWindow(#MDI,Item,#False,#False,500,300,Title$,#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_SizeGadget)
Debug "x_y_z : "+Str(x_y_z)
If x_y_z
ResizeCenteredWindow(Item,#Window)
SmartWindowRefresh(Item,#True)
If CreateGadgetList(WindowID(Item))
Debug "WebGadget : "+WebGadget(Item,#False,#False,WindowWidth(Item),WindowHeight(Item),Url$)
EndIf
EndIf
EndSelect
Debug "###### end AddPage ####"
EndProcedure