Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
824to828
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro mit Client-Server-Socket...

Makro mit Client-Server-Socket...
03.12.2006 17:25:52
Exelsior
Hallo,
ich möchte folgendes mit Excel Makros im Netzwerk realisieren:
PC 1:
Schickt ein beliebieges Byte an die IP des PC 2 im Netzwerk.
PC 2:
Wartet nach einem Buttonklick auf das Byte von PC 1. Wenn das Byte ankommt geht eine einfache MSGBOX mit "Na endlich..." auf.
Hört sich ja eigentlich einfach an, aber ich habe mir schon den Wolf gegoggelt :-)
Wäre super, wenn jemand eine Idee hätte.
Danke & Gruß,
Tom

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro mit Client-Server-Socket...
03.12.2006 21:39:46
Lukas Mosimann
Hallo Tom
Habe hier was für dich zusammengebastelt, dazu braucht es zwei Dateien:
Server unter https://www.herber.de/bbs/user/38702.xls
dieser muss immer zuerst geöffnet werden
Client unter

Die Datei https://www.herber.de/bbs/user/38701.xls wurde aus Datenschutzgründen gelöscht

Leider kann man so nur mit 2 PCs miteinander kommunizieren
ersetzte in dem Code noch Schule durch den richtigen PC-Name und bei bedarf 12345 durch einen anderen Port, über den du die Verbindung aufnehmen willst.
Wie man Mitteilungen versendet, siehst du im Modul1
Und falls du noch Fragen hast, kannst du natürlich wieder fragen.
Freundliche Grüsse
Lukas Mosimann
BItte um Rückmeldung
Anzeige
AW: Makro mit Client-Server-Socket...
04.12.2006 14:43:44
Exelsior
Hallo Lukas,
zuerst einmal vielen Dank für Deine Mühe!
Ich habe damit jetzt mal rumgespielt. Es hat auf Anhieb leider nicht geklappt. Ich habe dann die Routinen Buttons hinterlegt (Client: Connect, Disconnect, Status, Send / Server: Listen, Close, Status).
Der Server geht auch immer in den Status 2 (Listening).
Die ersten Tests waren lokal, also mit meiner eigenen IP. Leider bekommt der Client beim Connect immer den Status 8 (Der Remote hat die Verbindung getrennt).
Ich wollte es dann mit einem Kollegen testen, jedoch fehlt bei ihm in der Datei das EMBED Winsock.
Server: https://www.herber.de/bbs/user/38714.xls
Client: https://www.herber.de/bbs/user/38715.xls
Daher hätte ich nun folgende Fragen
1. Kann ich es für den einfachen Test nicht auch lokal ausprobieren?
2. Wie kann ich analysieren, warum kein Connect zustandekommt?
3. Wie kann ich Winsock in solch ein EMBED Objekt im Excel integrieren?
4. Muß ich das über EMBED machen, oder gibt es eine andere Lösung?
5. Warum ist das EMBED beim Kollegen nicht sichtbar?
Sorry, daß ich es nicht hinbekommen habe :-(
Wäre Dir für weitere Hilfe sehr dankbar.
Danke & Gruß,
TOM
Anzeige
AW: Makro mit Client-Server-Socket...
04.12.2006 16:49:25
Exelsior
Hallo Lukas,
hatte vergessen die Software Firewall auszuschalten - Mann bin ich dämlich :-( ...sorry.
Dann noch ein kleiner Fehler durchs ganze rumprobieren und schon lief es!
Jetzt hab ich nur noch die EMBED Fragen offen:
3. Wie kann ich Winsock in solch ein EMBED Objekt im Excel integrieren?
4. Muß ich das über EMBED machen, oder gibt es eine andere Lösung?
5. Warum ist das EMBED beim Kollegen nicht sichtbar?
Wenn Du mir da noch nen Hinweis geben könntest wäre super.
Aber auf jeden Fall schon mal vielen Danke für Deine Hilfe.
Gruß,
TOM
AW: Makro mit Client-Server-Socket...
04.12.2006 17:03:23
Lukas Mosimann
Hallo Tom
Frage 5: Musst in die Entwurfsansicht wechseln, dann siehst du es
Für die anderen muss ich mal das Steuerelement suchen, ...
Bis nachher
Lukas Mosimann
Anzeige
AW: Makro mit Client-Server-Socket...
04.12.2006 19:27:08
Lukas Mosimann
Also, da bin ich wieder :=)
zu Frage 3: eigentlich sollte dieses Steuerelement integriert sein, unter weitere Steuerelemente, Microsoft Winsock Steuerelement. Sonst melde dich bitte wieder.
Frage 4: Kannst es auch mit NetMessageBufferSend probieren, ist weniger komfortabel, sollte aber evtl. auch gehen:
Option Explicit
Private Declare

Function NetMessageBufferSend _
Lib "Netapi32.dll" _
(ByVal lpServerName As Long, _
ToName As Byte, _
ByVal FromName As Long, _
MsgBuffer As Byte, _
ByVal lnBufLen As Long) As Long

Function NachrichtSenden(Empfänger As String, Nachricht As String) As Long
Dim aEmpfänger() As Byte
Dim aNachricht() As Byte
Dim BufSize As Long
aEmpfänger = Empfänger & vbNullChar
aNachricht = Nachricht & vbNullChar
BufSize = LenB(Nachricht)
NetMessageBufferSend 0, aEmpfänger(0), 0, aNachricht(0), BufSize
End Function

Ist jedoch nicht so übersichtlich, und auch sonst nicht so komfortabel.
Freundliche Grüsse
Lukas Mosimann
Bitte um Rückmeldung
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige