Italia
Foro

<while %loading> bringt Interpreter und EXE zum Absturz.

 

Martin
Kempf
Ich lasse diesen Code in einer Schleife laufen und einen Schwung Abfragen übers Netz durchführen:
ElseIf @MenuItem(3484)'Test

if val(SolarSystemID$) > 0

    hGrid& = @create("Grid",8,0)
    angzeilen& = GetLines(OLView&)

    whileloop angzeilen&

        GetItemText(OLview&, bereich#, 5,&Loop)
        Prim$ = @Trim$(string$(bereich#,0))'PrimKey
        X$ = "SELECT MWert2 from MAT WHERE MTyp = 'O' AND MKey = '"+Prim$+"'"'TypID holen
        clearlist
        i% = @db("fbSQLExec", ep&, X$, hGrid&)

        if i% > 0'TypID gefunden.

            Y$ = GetText$(hGrid&,0,0)

            if val(Y$) > 0

                Url$ = "https://api.eve-central.com/api/quicklook?typeid=" + Y$ +"&usesystem="+SolarsystemID$
                i% = downloadfile(Url$, "TMP.TXT")

                if i% > 0

                    clear x&

                    while %loading

                        x& = &bytesread

                    endwhile

                endif

            endif

        endif

    endwhile

endif


Jetzt stürzt mir der Interpreter (oder auch die Exe) zu unterschiedlichen Zeitpunkten bei der Ausführung des Codes innerhalb der while %loading Schleife ab, nachdem der Download erfolgreich gestartet wurde und nur ne kleine Textdatei zurückkommt.
Was potuto die Ursache sein?
 
03.01.2016  
 



Probiere mal diese Funktion:

(ungetestet hier in den Editor geschrieben)

und ersetze Dein:
Url$ = "https://api.eve-central.com/api/quicklook?typeid=" + Y$ +"&usesystem="+SolarsystemID$
i% = downloadfile(Url$, "TMP.TXT")

if i% > 0

    clear x&

    while %loading

        x& = &bytesread

    endwhile

endif


in:
dwget("https://api.eve-central.com/api/quicklook?typeid=" + Y$ +"&usesystem="+SolarsystemID$,"tmp.exe")
 
03.01.2016  
 




Martin
Kempf
das nenn ich ne prompte Aiuto: danke dafür. Das scheint die Lösung zu sein - ich bekomm jetzt keinen Fehler mehr. Und es reicht völlig aus, wenn ich in die <while %loading> Schleife das <waitinput 50> einfüge, mehr muss ich am Code nicht ändern. Nur verrat mir mal, was <waitinput 50> eigentlich macht? Und hab ich da was in der XProfan-Aiuto nicht gefunden?
 
03.01.2016  
 



Ca. 50ms warten und Threads Zeit geben.

Da hier ein Absturz sonst folgt, nehme ich an, dass Roland die Kommunikation mit seinem Download-Thread nicht wirklich threadsicher programmiert hat. (hatte ich aber schon einmal festgestellt)
 
03.01.2016  
 



Habs wieder gefunden, ist von 11/2014:  [...] 
 
03.01.2016  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

5.122 Views

Untitledvor 0 min.
p.specht23.12.2020
Peter Max Müller05.03.2017
Rc19.01.2016
iF13.01.2016
Di più...

Themeninformationen

Dieses Thema hat 2 subscriber:

iF (3x)
Martin Kempf (2x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie