Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
Razor___
Newbie
Newbie

Anmeldedatum: 10.05.2008
Beiträge: 9

Select Case -Variable-Shell-
Verfasst am: 31.05.2008, 23:14

also ich hab bei dem irc bot (thx@ReED ) unten die commands mithilfe von select case abfragen .......

darunter diese hier :
Visual Basic: [code]
Case "rechner"
Shell ("calc.exe")
[/code]

Wie schaffe ich es das ich einen befehl habe wie z.B.

Visual Basic: [code]
Case "open " & PathToExe
Shell (PathToExE)
[/code]

also das ich ein beliebiges programm öffnenkann von dem ich den pfad weiß !

pls help

mfg and goodn8 Razor___
 
dcm
Poster
Poster

Anmeldedatum: 04.05.2008
Beiträge: 101


Verfasst am: 01.06.2008, 00:12

ääh...
vorher splitten nach " "? ^^
oder
if left(variable, 5) = "open " then
aber des wäre ja ein if
oder instr
aber des wäre auch if^^

zeig mal ein bisschen mehr code...
 
sollniss
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 699


Verfasst am: 01.06.2008, 00:12

!?!??!??

PathToExe = Pfad zur Datei
 
^^kev####
Überflieger
Überflieger

Anmeldedatum: 01.05.2008
Beiträge: 476
Wohnort: Haan


Verfasst am: 01.06.2008, 09:32

Visual Basic: [code]Select Case PathToExE
Case "Rechner"
Shell ("calc.exe")
Case "open"
bla = Split(PathToExE, " ")
Shell (bla(1))
End Select[/code]
 
Razor___
Newbie
Newbie

Anmeldedatum: 10.05.2008
Beiträge: 9


Verfasst am: 01.06.2008, 11:39

Danke habt mir schon sehr geholfen, ABER :

Ich hab ka was ich dem bot dann senden muss das er z.B notepad ausführt.

also ihr wollt code ? hier habt ihr code xD

Visual Basic: [code]
Sub Assemble(Incoming As String)

Dim Data() As String

Data = Split(Incoming, " ")

Select Case LCase(Data(0))

Case "ping"

ws.SendData "PONG " & Data(1) & vbCrLf

End Select

If UBound(Data) < 1 Then Exit Sub

Select Case LCase(Data(1))

Case "376", "422"
ws.SendData "JOIN " & txtChannel & vbCrLf
MsgBox "Sie sind dem Channel " & txtChannel & " beigetreten."

Case "433"
MsgBox "Nickname schon benutzt!", vbExclamation, "Fehler"

Case "privmsg"

Select Case LCase(Mid(Data(3), 2))

Case "!info"
ws.SendData "PRIVMSG " & Data(2) & " :Der Bot besitzt zur zeit folgende Funktionen: !info, !hi, !quit" & vbCrLf

Case "!hi"
ws.SendData "PRIVMSG " & Data(2) & " :Hallo, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf

Case "!quit"
ws.SendData "QUIT " & Data(2) & " :cYa" & vbCrLf

'Case "!best"
'ws.SendData "PRIVMSG " & Data(2) & " :" & Mid(Split(Data(0), "!")(0), 2) & " you are simply the BEST!" & vbCrLf

'Case "rofl"
'ws.SendData "PRIVMSG " & Data(2) & " :Ja den Witz fand ich auch gut!" & vbCrLf

'Case "re"
'ws.SendData "PRIVMSG " & Data(2) & " :Willkommen zurück, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf
'Case "rechner"
'Shell ("calc.exe")

End Select

Select Case PathToExE
Case "Rechner"
Shell ("calc.exe")
Case "open"
bla = Split(PathToExE, " ")
Shell (bla(1))
End Select

End Select

End Sub
[/code]

Kev es wäre nett wenn du mir sagen könntest was ich schreiben/ändern muss ...


Ich hätte das so gelöst :

Visual Basic: [code]
Case "!call" & callPath
callPath = Mid(callPath, 5, 50)
Shell (callPath)
[/code]

Jedoch musste ich der Variable CallPath erst mal den Wert von meinem Befehl zuteilen und ich hab keine Ahnung wie das geht ..... Also callPath musste z.B. !call "calc.exe" sein !

mfg Razor__ <3
 
dcm
Poster
Poster

Anmeldedatum: 04.05.2008
Beiträge: 101


Verfasst am: 01.06.2008, 20:28

am einfachsten wäre es, sich auf eine bestimmte länge festzulegen.
zum beispiel 3

Select Case LCase($Mid(Data(3), 2, 3))

Case "!in"
ws.SendData "PRIVMSG " & Data(2) & " :Der Bot besitzt zur zeit folgende Funktionen: !info, !hi, !quit" & vbCrLf

Case "!hi"
ws.SendData "PRIVMSG " & Data(2) & " :Hallo, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf

Case "!qu"
ws.SendData "QUIT " & Data(2) & " :cYa" & vbCrLf

Case "!ca"
Shell(mid$(Data(3),4) 'oder 3, bin mir grad nich ganz sicher^^

'Case "!be"
'ws.SendData "PRIVMSG " & Data(2) & " :" & Mid(Split(Data(0), "!")(0), 2) & " you are simply the BEST!" & vbCrLf

'Case "rof"
'ws.SendData "PRIVMSG " & Data(2) & " :Ja den Witz fand ich auch gut!" & vbCrLf

'Case "re "
'ws.SendData "PRIVMSG " & Data(2) & " :Willkommen zurück, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf
'Case "rechner"
'Shell ("calc.exe")
 
Razor___
Newbie
Newbie

Anmeldedatum: 10.05.2008
Beiträge: 9


Verfasst am: 01.06.2008, 21:47

So habe ich mir das auch vorgestellt aber der shell befehl funktionier nicht !!!!!!

Bitte helfet mir [img]/sleep.gif[/img]

mfg Razor___
 
dcm
Poster
Poster

Anmeldedatum: 04.05.2008
Beiträge: 101


Verfasst am: 03.06.2008, 16:41

ich kapiere deinen code nicht, ich würde vorschlagen, du schreibst es von grund auf neu. (oder debuggst es mit msgboxen)
diese funktion ruft explorer.exe auf.

Visual Basic: [code]Private Sub Command1_Click()
BeispielSub ("X!caExplorer.exe") 'der string wird übergeben. in deinem fall müsste data(3) so ähnlihc aussehen.
End Sub


Sub Beispielsub(Beispiel As String)

Select Case LCase(Mid$(Beispiel, 2, 3))

Case "!in"
'ws.SendData "PRIVMSG " & Data(2) & " er Bot besitzt zur zeit folgende Funktionen: !info, !hi, !quit" & vbCrLf

Case "!hi"
'ws.SendData "PRIVMSG " & Data(2) & " :Hallo, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf

Case "!qu"
'ws.SendData "QUIT " & Data(2) & " :cYa" & vbCrLf

Case "!ca"
MsgBox Mid$(Beispiel, 5)
Shell (Mid$(Beispiel, 5))

End Select
'Case "!be"
'ws.SendData "PRIVMSG " & Data(2) & " :" & Mid(Split(Data(0), "!")(0), 2) & " you are simply the BEST!" & vbCrLf

'Case "rof"
'ws.SendData "PRIVMSG " & Data(2) & " :Ja den Witz fand ich auch gut!" & vbCrLf

'Case "re "
'ws.SendData "PRIVMSG " & Data(2) & " :Willkommen zurück, " & Mid(Split(Data(0), "!")(0), 2) & vbCrLf
'Case "rechner"
'Shell ("calc.exe")

End Sub[/code]
 
Razor___
Newbie
Newbie

Anmeldedatum: 10.05.2008
Beiträge: 9

Problem Gelöst !!!!
Verfasst am: 03.06.2008, 17:11

So nach langem suchen is das rausgekommen und funzt ^^ :

Visual Basic: [code]
shell(data(4))
[/code]

weil er splittet nach jedem " " ^^

mfg Razor___
 
dcm
Poster
Poster

Anmeldedatum: 04.05.2008
Beiträge: 101


Verfasst am: 03.06.2008, 17:51


...

lol...

naja^^
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: select case, shell, basic

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Wichtig: Filebrowser z.B. für ein RAT 2206 13.01.2008, 12:14
Keine neuen Beiträge msgbox mit symbol _&_ z.B. yesno oder systemmodal 1156 27.09.2008, 00:16
Keine neuen Beiträge Abändern eines Ordnernamens (z.B. C:\Programme = Programme) 1294 23.04.2008, 16:33
Keine neuen Beiträge "Zurück-Funktion" mit Listview und z.B. DirView 823 17.04.2008, 14:30
Keine neuen Beiträge Fenster auslesen z.b von icq oder msn wer online kommt 1336 11.02.2008, 17:46
 


[ Time: 0.1575s ][ Queries: 107 (0.1025s) ][ GZIP on - Debug on ]