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
sp33dwalker
Poster
Poster

Anmeldedatum: 16.06.2008
Beiträge: 185

Winsock/.bat files...
Verfasst am: 21.09.2008, 09:27

hi ich hab ein problem,ich möchte per winsock einen text verschicken und der server macht ihn dann zu ner .bat datei und führt sie aus.Ich dachte mir dass es so geht aber irgendwie wird der case "batch" nicht angesprochen.An was könnte das liegen?

client:
Visual Basic: [code]Dim stra As String

stra = MsgBox("Are you sure?", vbYesNo + vbInformation, "Sure?")
If stra = vbYes Then
Dim txtdata As String
txtdata = "batch" & Text1.Text
client.ws.SendData txtdata
End If[/code]

server:
Visual Basic: [code]Case "batch"

MsgBox "LOOL"

Kill "c:1.bat"
Open "c:1.bat" For append As #1
Print #1, data
Close #1
Shell "c:1.bat"[/code]

die msgbox ist nur dafür damit ich weiß,dass der case "batch" angesprochen wird. achja und statt append hab ich auch schon output benutzt.Weiss jemand wieso das nicht klappt?
_________________
 
BlAcKfINAl.aT
Poster
Poster

Anmeldedatum: 26.07.2008
Beiträge: 162


Verfasst am: 21.09.2008, 09:38

Hey , Speedwalker

Hast du denn die beiden schon connected?

D.h. beim Server :

Localport einstelen
Listen lassen
Bei Request
Winsock1.close
winsock1.accept requestid
Und bei Data Arrival , das er das annimmt?

Und beim Client:

Das er dahin Connected , bevor er schickt
Auf den gleichen Port, auf den der Server "Listened"
und dan einfach beim Winsock unter connect , also wen er connected , dass er das dan schickt??


D.h. die eigentlcihe Frage : Sind die 2 Überhaupt verbunden ?


Und wenn Ja , dann :

Verusch mal beim Server ne Variable inen Datenarrival zu machen , also:

Dim strData as String
Winsock1.Getdata strData

Select Case Strdata
Case "batch"
msgbox "LOOL"
End Select

Liebe Grüße
 
sp33dwalker
Poster
Poster

Anmeldedatum: 16.06.2008
Beiträge: 185


Verfasst am: 21.09.2008, 10:08

öhm das ist nur das snippet^^ ich habe schon alles andere gemacht,wie case "msgbox" und da kommt es
 
BlAcKfINAl.aT
Poster
Poster

Anmeldedatum: 26.07.2008
Beiträge: 162


Verfasst am: 21.09.2008, 10:13

Adde mal 417898088 in ICQ..
 
bla
Coder
Coder

Anmeldedatum: 02.05.2008
Beiträge: 267


Verfasst am: 21.09.2008, 10:19

du darfst nicht Visual Basic: [code]case batch[/code] machen, weil der sendet ja nicht nur "batch" sondern den gesamten string mit dem textbox inhalt, deswegen:

Visual Basic: [code]select case left(data,5)
case "batch": etc...[/code]

(falls du das nicht gemacht hast)
 
sp33dwalker
Poster
Poster

Anmeldedatum: 16.06.2008
Beiträge: 185


Verfasst am: 21.09.2008, 10:25

hab ich auch schon probiert nur das komische ist,die msgbox kommt wenn ichs so mache

Dim stra As String

stra = MsgBox("Are you sure?", vbYesNo + vbInformation, "Sure?")
If stra = vbYes Then
Dim txtdata As String
txtdata = "batch"
client.ws.SendData txtdata
End If



da muss irgendwas falsch mit dem & text1.text sein
 
ZiG
Überflieger
Überflieger

Anmeldedatum: 16.04.2008
Beiträge: 421


Verfasst am: 21.09.2008, 11:08

bla hat es doch schon gesagt.
Es ist ein Unterschied ob du "batch" sendest oder "batchundtextvonderdatei"

Wenn das ganze drüben ankommt und du einfach per select case prüfst ob "batch" gesendet wurde, wird er nur reagieren wenn du auch wirklich nur das Wort "batch" gesendet hast und nicht noch den Text hinten drann.

Also du brauchst ein Trennzeichen wo du den Befehl vom Text der Datei dann trennen kannst.
 
sp33dwalker
Poster
Poster

Anmeldedatum: 16.06.2008
Beiträge: 185


Verfasst am: 21.09.2008, 12:58

meinst du Case "batch|": ? funzt auch net
 
bla
Coder
Coder

Anmeldedatum: 02.05.2008
Beiträge: 267


Verfasst am: 21.09.2008, 13:01

client.ws.SendData "batch|" & text1.text


wenn das ankommt:

dim ooo() as string
ooo = split(data,"|")

select case ooo(0)
case "batch": msgbox(ooo(1))

_________________


 
qu33n3x
Newbie
Newbie

Anmeldedatum: 24.03.2009
Beiträge: 1


Verfasst am: 28.03.2009, 20:46


lass doch die daten erstmal als .txt einlesen. Dann umbenennen und mit shell oder so ausführen. Ich fang grad erst visual basic an, aber das müsste doch eigentlich ganz einfach sein.
Da ich grad eh an nem chatprogram per winsocks sitze teste ichs später mal daheim und poste den code wenns klappt.
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: batch, winsock, msgbox, case, bat

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Wichtig: [Ebook] jetzt lerne ich Visual Basic 6 4741 02.06.2010, 12:55
Keine neuen Beiträge Miceosoft Visual Basic 6.0 Einsteiger Kurs? 1077 17.02.2007, 20:01
Keine neuen Beiträge SUCHE MICROSOFT VISUAL BASIC! 878 12.02.2007, 20:54
Keine neuen Beiträge Microsoft Visual Basic 1177 27.01.2007, 23:59
Keine neuen Beiträge Visual Basic.. Version?? 1136 22.01.2007, 17:23
 



[ Time: 0.4187s ][ Queries: 117 (0.0968s) ][ GZIP on - Debug on ]