Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2005, 14:49 Titel: Hilfe! Programm will nicht mehr starten - Zu wenig Speicher? |
|
|
Hallo,
Also, erstmal eine kleine Einleitung:
Einige von euch kennen sicher mein FreeBasic-Spiel Fruit Battle.
Da habe ich jetzt 16 neue Grafiken (größe: 17*17, bei 8 bit, also nur ca. 3 kB) hinzugefügt.
So weit so schlecht.
als das spiel nun startete, kam immer der windows-fehler, dass das programm einen fehler verursacht hat (bei winXP ohne AntiSpy: problem bericht senden?).
Er lies sich scheinbar leicht beheben: Alle meine grafik waren so aufgebaut:
ReDim Grafik (Index, BildIndex)
ich habe bei der neue Grafik das ReDim duruch dim ersetzt, und siehe da, esfunktioniert. Nein! Auf meinem anderen pc hat es nach wie vor nicht funktioniert.
Dann bin ich auf ImageCreate gestoßen, habe gehofft, dass das Programm dann wieder funktioniert. Auch das klappte nicht.
Nun frage ich:
Liegt es an meiner Dummheit oder hat Freebasic vielleicht doch ein Limit für Arbeitsspeicher? Ich habe in der FreeBasic-Hilfe gelesen, dass ein Systemfehler nur kommt, wenn ein Programm zu viel Ressourcen beansprucht (oder so...). Oder liegt es an meinem FreeBasic 0.14?
Ich brauche dringend Eure Hilfe und bedanke mich schon im voraus!
Quellcode + Daten:
http://home.arcor.de/saga-games/download/fruit-unstable.zip
die stelle, bei der der Fehler auftritt, hab ich mit 'xxx markiert. sie befindet sich seltsamerweise in der LoadGrafix-Sub. Das war auch noch zu zeiten, wo die grafiken in Arrays gespeichert waren - aber das Arry hat ja schon VORHER existiert. das ist sehr seltsam!
Könnt ihr mir helfen?
-Jojo _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2005, 15:01 Titel: |
|
|
Also ich hatte ja schon einige Datenfelder erweitert und genau überprüft, ob die Zahlen stimmen.
Du musst bedenken, dass der Fehler erst kam, als ich neue grafiken hinzugefügt hab, und deren Index stimmt sicher, bin mehrmals über den code hinweggegangen.
Vielleicht findest du einen Fehler? (oben ist ja der link, code+daten) _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2005, 15:32 Titel: |
|
|
oh, sorry, hier sind sie:
http://home.arcor.de/saga-games/download/bi.zip _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2005, 21:13 Titel: |
|
|
Also, der qberror, der kommt, ist angeblich nr 11 - division durch 0 - aber im relevanten code sollte der eigentlich keine rolle spielen...
Weist Windows meinem programm zu wenig speicher zu? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
MisterD
Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 29.12.2005, 21:24 Titel: |
|
|
das is FB, solang speicher da is holts sich den.. is nich wie unter QB wo das fest begrenzt is _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 29.12.2005, 21:39 Titel: |
|
|
In jedem fall komm ich nich drauf, wie dieser error passiert (ist ja der qb-code, weil ich mit -ex kompiliere). weil: es liegt ganz sicher NICHT an einer division, denn der fehler müsste dann ja auch in der funktionierenden version auftauchen (diese version funktioniert aber auch nur auf meinem pc.... seltsam) _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 30.12.2005, 21:21 Titel: |
|
|
Code: | [Zeile 762] LoadPicture "Sprite" <- Das löst den Fehler aus |
aber der Bug wird wohl in der Datei 'Graphics.bnk' sitzen?
_________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 30.12.2005, 22:03 Titel: |
|
|
hm, bei mir löste die ladefunktion von "ENEMY" den fehler aus... kann es vielleicht am freien speicher liegen?? wieviel ram hast du? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 30.12.2005, 22:22 Titel: |
|
|
er glaubt es wieder nicht
probier es:
rem die Zeile 726 aus Code: | 'LoadPicture "Sprite" | und starte...
Wenn du es mit FB015b compilieren willst mußt du Zeile 2758 - 2763 ändern:
Code: | If Player1Ctrl = Keyboard1 Then : Player1Dir = K1Dir: Player1Attack = K1Fir : End If
If Player1Ctrl = Keyboard2 Then : Player1Dir = K2Dir: Player1Attack = K2Fir : End If
If Player1Ctrl = Mouse Then : Player1Dir = MDir: Player1Attack = MFir : End If
If Player2Ctrl = Keyboard1 Then : Player2Dir = K1Dir: Player2Attack = K1Fir : End If
If Player2Ctrl = Keyboard2 Then : Player2Dir = K2Dir: Player2Attack = K2Fir : End If
If Player2Ctrl = Mouse Then : Player2Dir = MDir: Player2Attack = MFir : End If |
_________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 30.12.2005, 22:39 Titel: |
|
|
ich glaub es schon, es war mir sogar ziemlich klar, dass vershciedene leute mir verschiedene ergebnisse liefern....ich werd mal deinebn códe testen..
edit: Was passiert bei dir, wenn du andere "loadpictures" auskommentierst? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 31.12.2005, 00:19 Titel: |
|
|
..dann bricht das Programm mit Fehlermeldung ab.
Schöner Test, ich hoffe das überzeugt dich:
Code: | Sub LoadGrafix
Screenlock
Screenset 1
GoTo L1
.......Alle anderen LoadPicture
.......werden übersprungen
.......und diese allein am Ende ausgeführt
L1:
LoadPicture "Sprite"
For Ani = 0 To 11
Sprites(1,Ani+1)=ImageCreate(16,16):Get (Ani*17,0)-(Ani*17+15,15) ,Sprites(1,Ani+1)
Sprites(2,Ani+1)=ImageCreate(16,16):Get (Ani*17,17)-(Ani*17+15,32),Sprites(2,Ani+1)
Next Ani
Screenset 0
Screenunlock
End Sub |
Es liegt auch nicht am Speichermangel (ich habe 256MB), das läst sich durch ?Fre leicht feststellen. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 31.12.2005, 16:11 Titel: |
|
|
Hm, auf der einen Seite war ich gestern überzeugt, dass es wirklich daran liegt. Auf der anderen Seite hab ich es jetzt nochmal auf einem andern rechner ausprobiert, selbes ergebnis.
http://home.arcor.de/saga-games/download/fruit-unstable.zip (ist in ca. 5 minuten oben)
hier gibts nohcmal die ganz aktuelle version, ich dachte, das problem wäre damit behoben (hab nämlich einen kleinen bug in der graphics.bnk gefunden), aber es funzt immer noch nicht. es ist schon seltsam, das der selbe code auf verschiedenen rechner nciht läuft -oder? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 31.12.2005, 16:37 Titel: |
|
|
Hi,
der Fehler sitzt in der 'Sub LoadSize2'.
Du kannst mal raten wer wieder keine Bereichsgrenzen einhält und auch nicht überprüft (hatten wir das nicht schon mal )?
Hier habe ich dir die geänderten Dateien hochgeladen (alte Version): fruit.zip _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 31.12.2005, 16:39 Titel: |
|
|
volta hat Folgendes geschrieben: | Hi,
der Fehler sitzt in der 'Sub LoadSize2'.
Du kannst mal raten wer wieder keine Bereichsgrenzen einhält und auch nicht überprüft (hatten wir das nicht schon mal )?
Hier habe ich dir die geänderten Dateien hochgeladen (alte Version): fruit.zip |
kenn ich den?
ich werd mal schauen und hoffe, dass es auch auf meinen beiden andern pcs funktioniert _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 31.12.2005, 21:30 Titel: |
|
|
tja, ich muss dich enttäuschen, aber auch deine version funktioniert auf meinem XP-Rechner nicht ich installier hier mal schnell freeBasic und versuch, den fehler zu finden....
na dann... hoffetnlich übersteht das programm sylvester gut _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 01.01.2006, 14:02 Titel: |
|
|
mmh,
die erste Version 'fruit-image.bas' habe ich mit FB015b erstellt und läuft bei mir auf XP prof (könnte ich dir als exe hochladen, aber leider klappt meine HP im Moment nicht?).
Mit der von dir geänderten zweiten Version von "Graphics.bnk" treten dann aber Farbverfälschungen auf, läuft aber durch. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 01.01.2006, 22:05 Titel: |
|
|
hm... ich hab hier auch winXp prof, 256 MB.... und hab keine ahung von was der fehler hier kommt.... ich muss hier wirklich mal fb installiern
-Jojo _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 02.01.2006, 19:56 Titel: |
|
|
hm..... sehr seltsam.... ich weiß nicht, ob ich an meinen Programmierfähigkeiten oder an FreeBasic zweifeln soll.
Ergebnisbericht von Rechner: WinXP Prof, 256 MB
Hier lag es am Laden von "Mond".
Und hier kommt jetzt wirklich der bizarreste Bericht, den man sich überhaupt vorstellen kann!
-Wenn ich in der LoadPicture-Sub GANZ VORNE ein Bload "Bilder im Bmp Format\"+File+".bmp" einsetzt und alles andere UNVERÄNDERT lasse, ja dann funktioniert es. seeehr seltsam.
-Ich kann es auch auslassen, dann bleibt der fehler. weißt du aber, wo er steckt? Ich habe jeden befehl mit einem Sleep versehen (so sehe ich, wie weit das programm fehelrlos kommt). Und weißt du, wann es passiert ist? Unglaublich: Es passiert, wenn er die Sub Load.Size2 verlässt. der fehler kommt nach dem letzen befehl in dieser sub und vor dem nächsten befehl in der loadpicture sub. ich glaube..... ich sollte size² wieder rausnehmen leider _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
|