Avatar billede juggalo Nybegynder
21. juli 2002 - 23:36 Der er 4 kommentarer og
1 løsning

sende besked fra et VB-program til et andet (over netværk)

Jeg har 2 computere forbundet i netværk.

På den ene computer kører et VB tidtagningsprogram.

Jeg vil gerne kunne sende en instrukts til dette program fra et andet VB program som kører på den anden maskine i netværket...

Nogen som kan hjælpe mig i denne sammenhæng????
Avatar billede dk_akj Nybegynder
22. juli 2002 - 07:46 #1
Ja, du kan bruge winsock kontrollen.

På din vb6 cd er der nogle chat eksempler i denne folder:
\Common\Tools\VB\unsupprt
Dem kan du bruge som udgangspunkt

//akj
Avatar billede juggalo Nybegynder
22. juli 2002 - 21:09 #2
det kan jeg desværre ikke rigtigt finde hoved og hale i ... kan du evt. fikse noget kode som kan det jeg beskriver ovenfor??
Avatar billede dk_akj Nybegynder
23. juli 2002 - 07:48 #3
Her kommer et eksempel, opret en form med 2 commandbuttons (command1 og 2) en textbox (text1) en timer (timer1) og paste denne kode ind på formen.
Vælg desuden Microsoft Winsock Control 6.0 under Project - Components
indsæt 2 stk winsock-kontroller (winsock1 og 2)

//akj

Her er koden til formen:
Option Explicit

Private break As Boolean


Private Sub Command1_Click()
' connect

Winsock1.Connect Winsock1.LocalIP

' vent til connect ok
Do Until Winsock1.State = sckConnected Or break = True
        DoEvents
Loop
' send data
Winsock1.SendData "Dette er en test"
End Sub

Private Sub Command2_Click()
break = True
End Sub

Private Sub Form_Load()
' sæt porte
Winsock2.LocalPort = 1004
Winsock1.RemotePort = 1004

' lyt på 2'eren
Winsock2.Listen

' start timer
Timer1.Interval = 100
Timer1.Enabled = True

' text på knapper
Command1.Caption = "Send test"
Command2.Caption = "Bryd loop"



End Sub

Private Sub Timer1_Timer()
Dim ls_ret, ls_ret1

' status winsock1
Select Case Winsock1.State
    Case 0
        ls_ret = "Closed"
    Case 1
        ls_ret = "Open"
    Case 2
        ls_ret = "Listening"
    Case 3
        ls_ret = "Connection pending"
    Case 4
        ls_ret = "Resolving host"
    Case 5
        ls_ret = "Host resolved"
    Case 6
        ls_ret = "Connecting"
    Case 7
        ls_ret = "Connected"
    Case 8
        ls_ret = "Peer is closing the connection"
    Case 9
        ls_ret = "Error"
    Case Else
        ls_ret = "Unknown code"
End Select

' status winsock2
Select Case Winsock2.State
    Case 0
        ls_ret1 = "Closed"
    Case 1
        ls_ret1 = "Open"
    Case 2
        ls_ret1 = "Listening"
    Case 3
        ls_ret1 = "Connection pending"
    Case 4
        ls_ret1 = "Resolving host"
    Case 5
        ls_ret1 = "Host resolved"
    Case 6
        ls_ret1 = "Connecting"
    Case 7
        ls_ret1 = "Connected"
    Case 8
        ls_ret1 = "Peer is closing the connection"
    Case 9
        ls_ret1 = "Error"
    Case Else
        ls_ret1 = "Unknown code"
End Select

ls_ret = "In = " & ls_ret1 & "  Out = " & ls_ret
Text1.Text = ls_ret

End Sub


Private Sub Winsock1_SendComplete()
' når det hele er send lukkes porten
Winsock1.Close
End Sub

Private Sub Winsock2_ConnectionRequest(ByVal requestID As Long)
' luk porten
Winsock2.Close
' vent
Do
    DoEvents
Loop Until Winsock2.State = 0
' accepter connection
Winsock2.Accept requestID
End Sub

Private Sub Winsock2_DataArrival(ByVal bytesTotal As Long)
Dim strData As String

' modtag data
Winsock2.GetData strData, vbString

' vis data
MsgBox "Data sendt fra " & Winsock2.RemoteHostIP & " = " & strData

' luk port
Winsock2.Close
' vent på at porten er lukket
Do
    DoEvents
Loop Until Winsock2.State = 0

'lyt igen
Winsock2.Listen

End Sub
Avatar billede therichman Nybegynder
06. august 2002 - 15:17 #4
Kan du lave et der virker via internettet?
Avatar billede dk_akj Nybegynder
07. august 2002 - 06:59 #5
Ovenstående virker via internettet da det bruger tcp/ip protokollen.

MEN for at det virker på din pc og f.eks en kammerats pc skal i køre noget vpn og der skal være åbnet for portene i en evt. router.

//akj
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester