Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

26.11.2008, 16:34

Error beim ausführen einer Visual Basic exe

Moinsen
weiß net ob ich visual basic fragen auch hier reinpacken kann aber ich hoffe mal das passt ;D
also ich habe ein kleines Pacman (2D) programmiert mit Visual Basic. Wenn ich dass im Editor (Microsoft Visual Basic 6.0 Professional) starte klappt alles wunderbar wie es sein sollte. Doch nun das Problem:
Wenn ich Datei-> Exe erstellen mache, und diese dann ausführe, kommt, nachdem das Programm zum nächsten Fenster wechselt, eine Fehlermeldung meines Visual Studio Just-In-Time Debuggers. Da dieser bei mir jedoch leider nicht funktioniert habe ich keine richtigen Anhaltspunkte woran es liegen kann :(
hier ein screen der Meldung:

(Link)

Hat jemand evtl eine Idee woran das liegen kann? Wenn ich dass Spiel im Kompiler starte klappt es aber warum nach dem kompilieren zur .exe nicht mehr?
Bin für jede Hilfe dankbar!

mfG

edit edit^^: gut ich hab den Fehler eingrenzen können und es liegt an einer von 2 Funktionen (glaub ich) weil wenn ich diese Funktionen nicht aufrufe, alles wunderbar funktioniert. EIne Funktion wäre die Kollisionsabfrage und die andere die Funktion zum Bewegen des Geists.
Die Kollisionsabfrage sieht ungefähr so aus:

C-/C++-Quelltext

1
2
3
4
5
6
7
If image.Left + image.Width > CommandButton2.Left And image.Left < CommandButton2.Left + CommandButton2.Width Then
       If image.Top + image.Width > CommandButton2.Top And image.Top < CommandButton2.Top + CommandButton2.Height Then
       image.Left = Leftalt
        image.Top = Topalt
                  
        End If
    End If

und dies halt mit jedem Commandbutton der vorhanden ist gefolgt von einem Aufruf der Funktion Essen, also ob Man einen "Punkt" berührt hat, diese Funktion ist wiefolgt:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
Private Function Punkte_essn(ByVal Punkt As Object)
    If Image1.Left + Image1.Width - 8 > Punkt.Left And Image1.Left < Punkt.Left + Punkt.Width Then
       If Image1.Top + Image1.Width - 10 > Punkt.Top And Image1.Top < Punkt.Top + Punkt.Height - 10 Then
         If Punkt.Visible = True Then
       Punkt.Visible = False
       Punkte = Punkte + 10
       Label1 = "Punkte: " & Punkte
       End If
       End If
    End If
End Function

die andere Funktion zum Geister bewegen sieht wie folgt aus(wieder Zeilen mehrfach vorhanden für jedes existierende Objekt):

C-/C++-Quelltext

1
2
3
4
5
geistleftalt = geist.Left
        geisttopalt = geist.Top
        geist.Left = geist.Left - 10
        Call Geist_Collision(geist)
    Call Richtungändern(geist, Image354)

Man sieht schon, ich muss anscheinend fast alle meine Funktionen posten weil gerade die mit den meisten aufrufen fehler haben müssen^^
Die Funktion Geist_Collision ist wie die Check_Collision funktion aufgebaut, deswegen will ich sie hier nicht nochmal schreiben, sie ist nur auf andere Objekte bezogen.
So die letzte Funktion wäre dann noch Richtungändern, diese ist wie folgt aufgebaut:

C-/C++-Quelltext

1
2
3
4
5
6
Private Function Richtungändern(ByVal bild As Object, ByVal bild2 As Object)
    If bild.Left = bild2.Left And bild.Top = bild2.Top Then
        Randomize
        Richtunggeist = Int((4 * Rnd) + 1)
    End If
End Function

Geschaft *sigh* hoffe jetzt kann man mir eher helfen, wo ich doch jetzt meinen halben Code gepostet habe^^

freu mich über jede Hilfe^^