![]() |
Visual Basic 8, "... is not declared", Debug-Error
Hye Leute,
Wie ihr in der Überschrift schon lesen könnt habe ich ein Problem bei Visual Basic 2008. Ich wollte mir ein kleines "Counter-Strike Start Programm" erstellen. Das per Button das jeweilige CS bzw. CS Tool öffnet. Anfang hat das gut geklappt. Solange es nur die Spiele waren. Dann wollte ich einen Fehler darin verbessern sowie je ein Tool hinzufügen. Alles sieht perfekt aus. Das Fenster sowie der Code, ich als leihe, der Visual Basic erst seit ein paar Stundne nutzt kann sich das nicht erklären... Bei Debuggen kommt eine Fehlermeldung wo drin steht das einige Fehler im Code vorhanden sind und ob ich die letzte funktioniernde Datei öffnen will. Wenn ich unten in der "Error List" gucke, dann stehen dort einige Einträge. Der häufigste ist "... is not declared". Und wenige male "Expression expected". Ich denke die "Pro`s" unter euch werden den Fehler hier sofort finden. Bei Google habe ich nicht direkt etwas gefunden was mir weiterhilft... Könnt ihr mir weiterhelfen? Hier der "Code" Code:
Public Class Form1 MfG Jeremy |
Was für ein Fehler kommt da genau und kommt der nur bei diesem Projekt oder auch bei anderen? Außerdem
Code:
Shell (\Counter-Strike 1.6\cstrike.exe) Achja und Shell ist schon veraltet, benutz lieber Process.Start Code:
Process.Start(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) & "\Counter-Strike 1.6\cstrike.exe") |
Also der Ordner "Counter-Strike 1.6" wird je nach Computer immer einen anderen Pfad haben. Aber sie wird immer im gleichen "Ordner" wie die ".exe" liegen.
Also bspw. D:\*.exe, D:\Counter-Strike 1.6 Und bei einem anderen Computer ists halt E:\*.exe, E:\Counter-Strike 1.6. Stimmt so oder? JUHUU DANKE :D Das mit den blöden "" wars. Unglaublich was so kleine Sch....dinger beim "Programmieren" aus machen :D |
Achso das liegt einfach nur so da..dachte es ist im Programme\Valve Ordner..^^
|
Nene, das wird so ein StarterProgramm für die CS-Nonsteam Versionen :)
|
Hmm... nächstes Problem. Mein Plan mit den verschiedenen Pfaden geht nicht auf. Er spuckt eine Fehlermeldung aus. Wenn ich jedoch den kompletten, Momentanen Pfad angebe funktioniert es.
Jetzt die Frage: Wie kann ich einen Pfad angeben der immer auf einem anderen Laufwerkbuchstaben sein wird? |
Hi,
schreibe am Anfang das Verzeichnis der exe Datei in eine Variable und schnapp dir damit immer den aktuellen Pfad in welchem deine EXE grad liegt: Code:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click |
Sorry, aber da Blick ich grad ünerhaupt nicht durch... Die Exe vom 1.6 liegt bspw. hier:
Code:
K:\Projekte\CS DVD\Counter-Strike 1.6 Code:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click |
Ehhhh nein ... die Variable "strEXEDir" gibt dir automatisch den Pfad DEINES Programmes wieder. Müsstest in diesem Fall bei dir also nur dein selbstgeschriebenes Programm unter "K:\Projekte\CS DVD" ablegen. Und wenn der nächste das ganze halt unter "D:\Games\CS DVD" hat dann enthält die Variable automatisch den entsprechenden Pfad
|
Also passt sich "solange alles in einem Paket" bleibt, sogesagt der Pfad an den Standort an?
Ich werde das morgen alle mal ins Programm reinbringen, melde mich dann wieder :) Danke :) |
Man kann doch auch curDir() verwenden um den Pfad zu bekommen in dem das eigene Programm ist?!
Ich versteh die Frage leider nicht..könntest du versuchen sie nochmal zu erklären? Welche .exe meinst du und was willst du mit der machen? Also falls ich es richtig verstanden habe, dann sollte das klappen (ist jetzt ein Beispiel wenn dein Programm im Ordner Valve oder Projekte oder irgendwas liegt): Code:
Process.Start(curDir() & "\Counter-Strike 1.6\cstrike.exe") curDir() gibt dir den Pfad von deinem Programm zurück. Wenn du dein Prog z.B. in C:\Projekte steckst und die cstrike.exe hier liegt: C:\Projekte\Counter-Strike 1.6\cstrike.exe dann machst einfach: Code:
Process.Start(curDir() & "\Counter-Strike 1.6\cstrike.exe") |
Hey Danke euch. Beide Varianten funzen wunderbar. Aber ich verwende lieber Shoxx seine die ist um einiges kürzer und besser zu merken :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:59 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.