/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Winsock m.v.
Fra : Lasse Madsen


Dato : 22-03-04 14:53

Hej.

Jeg er ved at finde ud af hvordan TFTP fungere inden jeg sætter mig ned og
roder med det på en embedded platform og ville derfor gerne eksperimentere
lidt med det først via VB

For at tilslutte mig serveren er det så ikke nok at skrive:

' Forbind til TFTP serveren.
Winsock1.Protocol = sckUDPProtocol
Winsock1.Connect "223.223.23.51", "69"

' Hent fil readme.txt fra serveren via netascii
Winsock1.SendData "01readme.txt0netascii0"

det jeg er i tvilv om er om man bare kan gøre det jeg gør ?

(det virker nemlig ik)

m.v.h
Lasse Madsen



 
 
Steen Gellett (22-03-2004)
Kommentar
Fra : Steen Gellett


Dato : 22-03-04 16:05


"Lasse Madsen" <lm@h-tech.dk> skrev i en meddelelse
news:405eefc2$0$177$edfadb0f@dtext01.news.tele.dk...
> Hej.
>
> Jeg er ved at finde ud af hvordan TFTP fungere inden jeg sætter mig ned og
> roder med det på en embedded platform og ville derfor gerne eksperimentere
> lidt med det først via VB
>
> For at tilslutte mig serveren er det så ikke nok at skrive:
>
> ' Forbind til TFTP serveren.
> Winsock1.Protocol = sckUDPProtocol
> Winsock1.Connect "223.223.23.51", "69"
>
> ' Hent fil readme.txt fra serveren via netascii
> Winsock1.SendData "01readme.txt0netascii0"
>
> det jeg er i tvilv om er om man bare kan gøre det jeg gør ?
>
> (det virker nemlig ik)

1 . Du laver en .SendData..........hvordan havde du regnet med at den ville
HENTE noget til dig
2. Er du sikker på at du vil bruge UDP protokollen ??
3. Tror du ikke det ville være bedre at bruge Inet kontrollen til FTP....
Winsock duer ikke til FTP
4. Hvis du bruger Inet så har du også en FTP protokol du kan vælge !!


>
> m.v.h
> Lasse Madsen
>
>



Lasse Madsen (23-03-2004)
Kommentar
Fra : Lasse Madsen


Dato : 23-03-04 00:49


> 1 . Du laver en .SendData..........hvordan havde du regnet med at den
ville
> HENTE noget til dig

Jeg har noget "get data" kode længere nede som man ikke kan se i eksemplet
jeg ville lige starte med at kunne få forbindelse til serveren i første
omgang
(kan jo se i status på tftp serveren hvad den laver)

> 2. Er du sikker på at du vil bruge UDP protokollen ??

Ja.

> 3. Tror du ikke det ville være bedre at bruge Inet kontrollen til FTP....
> Winsock duer ikke til FTP

min TCP/IP protokol stack understøtter ikke flere sockets så jeg kan ikke
køre FTP...

> 4. Hvis du bruger Inet så har du også en FTP protokol du kan vælge !!

Ja TFTP...

M.v.h.
L. Madsen



Kasper (23-03-2004)
Kommentar
Fra : Kasper


Dato : 23-03-04 15:48

> min TCP/IP protokol stack understøtter ikke flere sockets så jeg kan ikke
> køre FTP...

Hvad bruger du af socket / stack i uC ?

Kasper



Lasse Madsen (24-03-2004)
Kommentar
Fra : Lasse Madsen


Dato : 24-03-04 08:49

Hej Kasper.

> Hvad bruger du af socket / stack i uC ?

Det er indebygget i mit modem www.roundsolutions.com så det er jeg ikke så
meget herre over ...

m.v.h
Lasse Madsen



Kasper (24-03-2004)
Kommentar
Fra : Kasper


Dato : 24-03-04 14:45


"Lasse Madsen" <lm@h-tech.dk> wrote in message
news:40613d3f$0$170$edfadb0f@dtext01.news.tele.dk...
> Hej Kasper.
>
> > Hvad bruger du af socket / stack i uC ?
>
> Det er indebygget i mit modem www.roundsolutions.com så det er jeg ikke så
> meget herre over ...


Men skal du ikke stadig kører tcp/ip mellem uC og gsm modulet bare på rs232
linien ??? læst eikke lige så meget der..

Kasper



Lasse Madsen (25-03-2004)
Kommentar
Fra : Lasse Madsen


Dato : 25-03-04 08:28

Hej Kasper

>
> Men skal du ikke stadig kører tcp/ip mellem uC og gsm modulet bare på
rs232
> linien ??? læst eikke lige så meget der..

Nej det ordnet modemet ... jeg skal bare sende den protokol jeg vil
feks hvis jeg vil logge på en SMTP server og sende en mail

AT#SKTSET=1,25,"Smtp.cybercity.dk"
AT#STKOP

nu forbinder modemet til serveren og jeg kan sende alm SMTP kommanodoer til
serveren feks.

HELO<cr><lf>

m.v.h.
l. madsen



Tomas Christiansen (22-03-2004)
Kommentar
Fra : Tomas Christiansen


Dato : 22-03-04 23:05

Lasse Madsen skrev:
> For at tilslutte mig serveren er det så ikke nok at skrive:
>
> ' Forbind til TFTP serveren.
> Winsock1.Protocol = sckUDPProtocol
> Winsock1.Connect "223.223.23.51", "69"
>
> ' Hent fil readme.txt fra serveren via netascii
> Winsock1.SendData "01readme.txt0netascii0"

Det er helt korrekt at du skal bruge UDP-protokollen, når du vil tale med en
TFTP-server.
Connect giver dog ingen mening, når man bruger UDP. UDP er jo netop
"connectionless"! Sæt Protocol, RemoteHost og RemotePort, og brug derefter
Bind i stedet for Connect.

Din SendData bør sende strengen "01readme.txt0netascii0" til serveren,
nøjagtig som du beder Winsock-controllen om, og så vidt jeg kan se af
RFC1350, så stemmer det vist meget godt overens med hvad man skal gøre hvis
man vil hente en fil ned fra en TFTP-server. Mon ikke det kommer til at
virke, når du bruger Bind, som foreslået ovenfor?

-------
Tomas


Lasse Madsen (23-03-2004)
Kommentar
Fra : Lasse Madsen


Dato : 23-03-04 10:02

Hej Thomas.

jeg prøver følgende uden held.


Private Sub Command1_Click()
Dim result
Winsock1.RemoteHost = "223.223.23.51"
Winsock1.Protocol = sckUDPProtocol
Winsock1.RemotePort = 69
Winsock1.Bind 68
Winsock1.SendData "01readme.txt0netascii0"
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
Winsock1.GetData strData, vbString
MsgBox strData
End Sub

jeg kommer ikke igennem til min TFTP server på IP adressen (som er min
lokale ip hvor serveren også kører på) jeg har forstået RFC således at jeg
bestemmer den port jeg vil lytte på overfor serveren er dette korrekt ?
hvordan ved serveren det så ?

M.v.h.
L. Madsen



Tomas Christiansen (23-03-2004)
Kommentar
Fra : Tomas Christiansen


Dato : 23-03-04 13:07

Lasse Madsen skrev:
> Winsock1.RemoteHost = "223.223.23.51"
> Winsock1.Protocol = sckUDPProtocol

Du bør principielt sætte Protocol FØR RemoteHost.

> Winsock1.RemotePort = 69
> Winsock1.Bind 68

Prøv at lade være med at angive en lokal port i Bind. Så finder Winsock selv
en ledig port til dig, og det er lidt pænere (og jeg har selv haft problemer
med at få det til at virke, når jeg specificerer en lokal port).

> Winsock1.SendData "01readme.txt0netascii0"

Jeg kiggede lidt mere på RFC'en, og der står tydeligt at filnavn og mode
skal afsluttes af en "zero-byte". Du bør nok også bruge data-mode "octet" i
stedet for "netascii".
Desuden skal operation-code også sendes som byte-værdier (det synes jeg til
gengæld ikke fremgår tydeligt).
Jeg startede en TFTP-klient op mod en TFTP-server og prøvede at trace med
Ethereal og opdagede at der faktisk sættes to ekstra 0-bytes på i slutningen
af pakken.

Prøv derfor med:
Winsock1.SendData Chr(0) & Chr(1) & "readme.txt" & Chr(0) & "octet" &
Chr(0)
Hvis det ikke virker så tilføj: & Chr(0) & Chr(0)

Jeg kan på det varmeste anbefale dig at downloade Ethereal fra
www.ethereal.com - den kører både under Windows og Linux, og den kører som
en drøm Husk at du også skal downloade og installere WinPcap_3_0.exe for
at få Ethereal til at køre under Windows.

> jeg kommer ikke igennem til min TFTP server på IP adressen (som er min
> lokale ip hvor serveren også kører på) jeg har forstået RFC således at jeg
> bestemmer den port jeg vil lytte på overfor serveren er dette korrekt ?
> hvordan ved serveren det så ?

Serveren får jo netop et datagram fra dig (din SendData), hvori der jo står
afsender IP-adresse og port-nummer.

-------
Tomas


Lasse Madsen (25-03-2004)
Kommentar
Fra : Lasse Madsen


Dato : 25-03-04 08:26

Hej Thomas

Det virker !

Tusinde tak !

M.v.h.
Lasse



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste