Willkommen |
|
|
myGully |
|
|
Links |
|
|
Forum |
|
|
|
|
 |
08.07.10, 15:54
|
#1
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
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
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Shell (\Counter-Strike 1.6\cstrike.exe)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Shell (\Counter Strike Condition Zero\Counter Strike Condition Zero)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Shell(\Counter-Strike Source\cstrike.exe)
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Shell (\Zubehoer\ESP_CSS.exe)
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Shell (\Zubehoer\ESP_CS.exe)
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Shell (\Zubehoer\ESP_CS.exe)
End Sub
End Class
Achja, bevor die doofe Sprüche fliegen xD ESP ist nicht der Hack, sondern das "Einheizers S***** Pack". Halt für Buys***** unso :=)
MfG Jeremy
|
|
|
08.07.10, 16:29
|
#2
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
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  Das mit den blöden "" wars. Unglaublich was so kleine Sch....dinger beim "Programmieren" aus machen
|
|
|
08.07.10, 16:46
|
#3
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
Nene, das wird so ein StarterProgramm für die CS-Nonsteam Versionen
|
|
|
08.07.10, 22:10
|
#4
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
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?
|
|
|
08.07.10, 22:36
|
#5
|
|
Anfänger
Registriert seit: Aug 2009
Beiträge: 4
Bedankt: 5
|
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
Dim strEXEName As String
Dim strEXEDir As String
strEXEName = Reflection.Assembly.GetExecutingAssembly().Location
strEXEDir = IO.Path.GetDirectoryName(strEXEName)
Process.Start(strEXEDir & "\Counter-Strike 1.6\cstrike.exe")
End Sub
|
|
|
09.07.10, 00:07
|
#6
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
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
Dann würde das folgendermassen lauten?
Code:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim strEXEName As String
Dim strEXEDir As String
strEXEName = Reflection.Assembly.GetExecutingAssembly().Location
strEXEDir = IO.Path.GetDirectoryName(strEXEName)
Process.Start(strEXEDir & "K:\Projekte\CS DVD\Counter-Strike 1.6\cstrike.exe")
End Sub
|
|
|
09.07.10, 00:25
|
#7
|
|
Anfänger
Registriert seit: Aug 2009
Beiträge: 4
Bedankt: 5
|
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
|
|
|
09.07.10, 00:41
|
#8
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
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
|
|
|
09.07.10, 17:25
|
#9
|
|
Banned
Registriert seit: Apr 2010
Beiträge: 472
Bedankt: 234
|
Hey Danke euch. Beide Varianten funzen wunderbar. Aber ich verwende lieber Shoxx seine die ist um einiges kürzer und besser zu merken
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:39 Uhr.
().
|