Italia
Foro

Was mache ich hier mit create("hpic"...) falsch

 

GDL
Ciao,
habe ein Programm, das meinen freien Speicher(240MB) beim Laden kurzfristig auf 2 MB bringt und danach wieder auf 235 MB ansteigen lässt.

Durch Fehlersuche fand Io l' Übeltäter
KompilierenMarkierenSeparieren
proc leiste

    windowstyle 3
    arbeitsleiste&=create("window",%hwnd,"Arbeitsleiste",1,%maxy-190,1000,90)
    name$= astart$+"\bilder\bild1.BMP"
    bild_&[9000] = @Create("HPIC", -1, name$)
    ger1&=@Create("PicButton",arbeitsleiste&,bild_&[9000],1,1,30,30,)
    name$= astart$+"\bilder\bild2.BMP"
    bild_&[8999] = @Create("HPIC", -1, name$)
    ger2&=@Create("PicButton",arbeitsleiste&,bild_&[8999],31,1,30,30,)
    name$= astart$+"\bilder\bild3.BMP"
    bild_&[8998] = @Create("HPIC", -1, name$)
    bog1&=@Create("PicButton",arbeitsleiste&,bild_&[8998],61,1,30,30,)
    name$= astart$+"\bilder\bild4.BMP"
    bild_&[8997] = @Create("HPIC", -1, name$)
    bog2&=@Create("PicButton",arbeitsleiste&,bild_&[8997],91,1,30,30,)
    name$= astart$+"\bilder\bild5.BMP"
    bild_&[8996] = @Create("HPIC", -1, name$)
    bog3&=@Create("PicButton",arbeitsleiste&,bild_&[8996],121,1,30,30,)
    name$= astart$+"\bilder\bild6.BMP"
    bild_&[8995] = @Create("HPIC", -1, name$)
    bog4&=@Create("PicButton",arbeitsleiste&,bild_&[8995],151,1,30,30,)
    name$= astart$+"\bilder\bild7.BMP"
    bild_&[8994] = @Create("HPIC", -1, name$)
    wei1&=@Create("PicButton",arbeitsleiste&,bild_&[8994],181,1,30,30,)
    name$= astart$+"\bilder\bild8.BMP"
    bild_&[8993] = @Create("HPIC", -1, name$)
    wei2&=@Create("PicButton",arbeitsleiste&,bild_&[8993],211,1,30,30,)
    name$= astart$+"\bilder\bild9.BMP"
    bild_&[8992] = @Create("HPIC", -1, name$)
    wei3&=@Create("PicButton",arbeitsleiste&,bild_&[8992],241,1,30,30,)
    name$= astart$+"\bilder\bild10.BMP"
    bild_&[8991] = @Create("HPIC", -1, name$)
    wei4&=@Create("PicButton",arbeitsleiste&,bild_&[8991],271,1,30,30,)
    name$= astart$+"\bilder\bild11.BMP"
    bild_&[8990] = @Create("HPIC", -1, name$)
    wei5&=@Create("PicButton",arbeitsleiste&,bild_&[8990],301,1,30,30,)
    name$= astart$+"\bilder\bild12.BMP"
    bild_&[8989] = @Create("HPIC", -1, name$)
    wei6&=@Create("PicButton",arbeitsleiste&,bild_&[8989],331,1,30,30,)
    name$= astart$+"\bilder\bild13.BMP"
    bild_&[8988] = @Create("HPIC", -1, name$)
    wei7&=@Create("PicButton",arbeitsleiste&,bild_&[8988],361,1,30,30,)
    name$= astart$+"\bilder\bild14.BMP"
    bild_&[8987] = @Create("HPIC", -1, name$)
    wei8&=@Create("PicButton",arbeitsleiste&,bild_&[8987],391,1,30,30,)
    name$= astart$+"\bilder\bild19.BMP"
    bild_&[8986] = @Create("HPIC", -1, name$)
    kw1&=@Create("PicButton",arbeitsleiste&,bild_&[8986],421,1,30,30,)
    name$= astart$+"\bilder\bild20.BMP"
    bild_&[8985] = @Create("HPIC", -1, name$)
    kw2&=@Create("PicButton",arbeitsleiste&,bild_&[8985],451,1,30,30,)
    name$= astart$+"\bilder\bild15.BMP"
    bild_&[8984] = @Create("HPIC", -1, name$)
    sig1&=@Create("PicButton",arbeitsleiste&,bild_&[8984],481,1,30,30,)
    name$= astart$+"\bilder\bild16.BMP"
    bild_&[8983] = @Create("HPIC", -1, name$)
    sig2&=@Create("PicButton",arbeitsleiste&,bild_&[8983],511,1,30,30,)
    name$= astart$+"\bilder\bild18.BMP"
    bild_&[8982] = @Create("HPIC", -1, name$)
    ap&=@Create("PicButton",arbeitsleiste&,bild_&[8982],541,1,30,30,)
    name$= astart$+"\bilder\bild17.BMP"
    bild_&[8981] = @Create("HPIC", -1, name$)
    bm&=@Create("PicButton",arbeitsleiste&,bild_&[8981],571,1,30,30,)
    tas&=@Create("Button",arbeitsleiste&,"Ta",601,1,30,30,)
    text&=@Create("Button",arbeitsleiste&,"Text",631,1,50,30,)
    name$= astart$+"\bilder\bild21.BMP"
    bild_&[8980] = @Create("HPIC", -1, name$)
    dwei&[1]=@Create("PicButton",arbeitsleiste&,bild_&[8980],690,1,60,36)
    name$= astart$+"\bilder\bild22.BMP"
    bild_&[8979] = @Create("HPIC", -1, name$)
    dwei&[2]=@Create("PicButton",arbeitsleiste&,bild_&[8979],755,1,60,36)
    name$= astart$+"\bilder\bild23.BMP"
    bild_&[8978] = @Create("HPIC", -1, name$)
    dwei&[3]=@Create("PicButton",arbeitsleiste&,bild_&[8978],820,1,36,60)
    name$= astart$+"\bilder\bild24.BMP"
    bild_&[8977] = @Create("HPIC", -1, name$)
    dwei&[4]=@Create("PicButton",arbeitsleiste&,bild_&[8977],875,1,36,60)
    name$= astart$+"\bilder\bild25.BMP"
    bild_&[8976] = @Create("HPIC", -1, name$)
    winkel&[1]=@Create("PicButton",arbeitsleiste&,bild_&[8976],1,35,30,30)
    name$= astart$+"\bilder\bild26.BMP"
    bild_&[8975] = @Create("HPIC", -1, name$)
    winkel&[2]=@Create("PicButton",arbeitsleiste&,bild_&[8975],31,35,30,30)
    sleep 5000				 sonst bricht der Speicher endproc


Mit sleep 5000 an dieser Stelle bricht der Speicher nicht mehr ein.Je kleiner die Sleepzeit umso weiter bricht der Speicher ein.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
02.12.2006  
 



Ja weil Windows Zeit braucht um diese Unmengen als virtuellen Speicher auf die Platte zu bringen.

Was haben die Bilder per Ausnaße?
 
03.12.2006  
 




GDL
Hallo if,

durchschnittlich 2KB,und insgesamt 30 Bilder. Die Bilder bis bild_&[8970] werden aber beim Start noch nicht belegt.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
03.12.2006  
 



Hm aber ca 30*2kb sind keine 240mb - wie oft rufst Du diese Proc auf?
 
03.12.2006  
 




GDL
1 mal beim Start, dann nicht mehr.Danach ändert sich auch nichts mehr am verfügbarem Speicher. Ist nur am Programmstart einmal ein absacken auf ca. 2MB ohne sleep.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
03.12.2006  
 




Rolf
Koch
Was passiert, wenn Du jedesmal folgende Zeile einfügst?
bild_&[9000] = @Create(HPIC, -1, name$)
ger1&=@Create(PicButton,arbeitsleiste&,bild_&[9000],1,1,30,30,)
deleteobject bild_&[9000]
(falls dies überhaupt possibile ist)
 
03.12.2006  
 




GDL
Hallo Rolf,
werde ich testen, rühr mich wieder.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
03.12.2006  
 




Rolf
Koch
nochwas:
vielleicht dann so?

bild&=@Create(HPIC, -1, name$)
ger1&=@Create(PicButton,arbeitsleiste&,bild&,1,1,30,30,)
destroywindow bild&

name$= astart$+\bilder\bild2.BMP
bild& = @Create(HPIC, -1, name$)
ger2&=@Create(PicButton,arbeitsleiste&,bild&,31,1,30,30,)
destroywindow bild&

das reicht doch, brauchst doch keine Arrayvari dafür!
 
03.12.2006  
 




GDL
Hallo Rolf,

habe obigen so Teil abgeändert
KompilierenMarkierenSeparieren
proc leiste

    windowstyle 3
    arbeitsleiste&=create("window",%hwnd,"Arbeitsleiste",1,%maxy-190,1000,90)
    ja
    name$= astart$+"\bilder\bild1.BMP"
    bild_&[9000] = @Create("HPIC", -1, name$)
    ger1&=@Create("PicButton",arbeitsleiste&,bild_&[9000],1,1,30,30,)
    deleteobject bild_&[9000]
    sleep 5000
    n

selbiges in grün.Auch bei nur einem Pic.Ohne sleep bricht Speicher kurzfristig zusammen.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
03.12.2006  
 




GDL

KompilierenMarkierenSeparieren
name$= astart$+"\bilder\bild1.BMP"
bild_&[9] = @Create("HPIC", -1, name$)
ger1&=@Create("PicButton",arbeitsleiste&,bild_&[9000],1,1,30,30,)
deleteobject bild_&[9000]
sleep 5000
retur

Auch mit einer kleinen Bildnummer das gleiche.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
03.12.2006  
 




Rolf
Koch
*lol*
Nee egal ob klein oder gross, einfach immer nur die selbe Variable BILD& ohne Arrayzähler.
 
03.12.2006  
 




Rolf
Koch
Aber Stopp:
Wie sieht PICBUTTON aus (wird wohl ne Subproc sein?) - vielleicht passiert da ja was (irgendwas nicht freigegeben oder so)?
 
03.12.2006  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

1.914 Views

Untitledvor 0 min.
rquindt22.11.2015
Uwe Lang27.02.2014
Axel Berse20.02.2013

Themeninformationen

Dieses Thema hat 4 subscriber:

GDL (11x)
Rolf Koch (6x)
unbekannt (3x)
iF (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