Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: EXE:n teko ongelma(QB) (VB6)

Sivun loppuun

Gaxx [31.01.2004 13:02:17]

#

Kun yritän tehdä QB:llä exe:ä ohjelmastani niin siinä tulee jotain severe erroreita. Toisen sain jo korjattua, mutta se toinen on:

0012 0392 FOR c = 1 to 10
Ja siihen QB sitten viittaa, että PROGRAM-MEMORY OVERFLOW

Onko kenelläkään mitään hajua siitä mikä voisi olla vialla

Tässä pieni koodinpätkä jossa tuo virhe on (jos nuo numerot tuossa virheilmotuksessa on rivi- ja sarakenumeroita):

FOR c = 1 TO 25
if muisti2(c) = "" then pispaal2
NEXT

Koko ohjelmasta ei löydy

FOR c = 1 TO 10

koodin pätkää. Koodi on otettu rivinumeroiden perusteella ja viittaa "muisti2(C)" kohtaan. muisti2(c) on määritelty:

DIM muisti2(25) AS STRING

Edit: tuosta tuskin saa mitään selvää, mutta pyytäkää lisäinformaatiota kun tarvitsette :)

Janezki [31.01.2004 13:30:52]

#

for i = 1 TO 10

Gaxx [31.01.2004 13:34:52]

#

Joo :) oli ne siinä koodissa mutta en huomannut kirjottaa niitä tohon viestiin... kummallista, että ne tuppaa unohtuun tollalailla. Tällästä on sattunut mulla aikasemminkin.

Gaxx [31.01.2004 18:15:58]

#

Eihän kukaan vaan luullut, että ongelma selvis? Ehei, vaikka edellisestä viestistäni ehkä sellaisen käsityksen voi saada.

PS. Kyllä siinä ohjelmassa on sittenkin tollanen rivi kun tossa errorissakin... olin jättänyt tosta FOR c = 1 TO 10 ton tummennetun osan pois kun olin ettiny sitä search toiminnolla :)

pieslice [31.01.2004 18:52:29]

#

käännetyn moduulin koko on sulla suurempi kuin 64kb (DOSsin segmentti, yhden obj-tiedoston maksimikoko). jaa ohjelmasi moduuleihin (eri .BAS tiedostoihin), käännä ne ja LINKkaa ne yhdeksi exeksi.

myös '$DYNAMIC alussa saatta auttaa...

Gaxx [31.01.2004 19:56:29]

#

Hmmm... kun käännän ohjelman ilman virheiden tarkistusta ja testailen sitä exe:stä ajettua ohjelmaa, niin en havaitse millään osa-alueella minkään laisia virheitä. Tämäpä minua ihmetyttääkin.

pieslice [01.02.2004 17:22:51]

#

kääntäjä ei tarvitse niin paljon muistia, kun siinä ei ole virhecheckkiä, jolloin ohjelmasi kääntyy ilman sanktioita.
myös perusmuistin vapauttaminen auttaa...
mutta silti suosittelisin ohjelman jakamista pienempiin moduuleihin, jotta voit laajentaa sitä jatkossa (se raja tulee kohta vastaan ilman virheidentarkistustakin).
tai jos sulla on tarpeettomia DECLARE-käskyjä, niin ne kannattaa poistaa, koska ne syövät yllättävän paljon muistia.

Gaxx [01.02.2004 18:22:15]

#

Voisi sanoa, että tuo ohjelma(roolipelimoottori) on valmis joten enpä usko, että se siitä enää montaa kiloa kasvaa(nykyinen 100kt). Voi tuntua ehkä vähän turhan pieneltä, mutta pelistä pitikin tulla simppeli. Kenttien ja muiden rojujen teko viekin sitten aikaa ja paljon...

Kiitos kumminkin asian selvennyksestä.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta