vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Sendkeys zu ein anderen PC 
Autor: Preisser
Datum: 26.06.09 15:44

Hallo einet,

probiere mal folgenden Code, den ich dazu erstellt habe. Er beinhaltet Datenübertragungsroutinen für eine Server- und Clientanwendung, die ein Paketabgrenzungsprotokoll enthält (mit Unterstützung für Strings, die Unicode-Zeichen enthalten), Unterstützung für mehrere gleichzeitig verbundene Clients sowie Verbindungstrennungs- und Verbindungsfehlererkennung; außerdem eine Verbindungstimeouterkennung.

(Leider ist die Textlänge pro Beitrag ziemlich begrenzt, deswegen musste ich die Antwort wieder aufteilen).
Teil 1:

Erstelle mit VB 2 Projekte (eine Serveranwendung, die auf Verbindungen von Clients wartet, und dann auch die Sendkeys Anweisungen ausführt, und eine Clientanwendung, die sich zum Server verbindet und die Tasten sendet).

Für die Clientanwendung fügst du auf der Form hinzu:
Timer: "TimerVerbinden"
Timer: "TimerLeerlaufErhalten"
CommandButton: "Command1"
TextBox: "Text1"
Winsock1: "Winsock1"
Label: "Label1" (zeigt den aktuellen Verbindungsstatus an)

Danach fügst du im Codefenster folgenden Code hinzu:
Option Explicit
 
Private Sub Command1_Click()
WSockSendenB Text1.Text
Text1.Text = ""
End Sub
 
Private Sub Form_Load()
Winsock1.RemoteHost = "localhost"
Winsock1.RemotePort = 53852
 
Text1 = ""
TimerLeerlaufErhalten.Interval = 30000
TimerVerbinden.Interval = 3000
Command1.Enabled = False
TimerVerbinden_Timer
End Sub
 
Public Function StringB(Number As Long, Character As String)
Dim CharInt As String
CharInt = MidB$(Character, 1, 1)
StringB = String(Int(Number / 2), CharInt & CharInt)
If Number Mod 2 = 1 Then StringB = StringB & CharInt
End Function
 
Public Sub LongNachByte(Zahl As Long, ByteArr() As Byte)
ReDim ByteArr(3) As Byte
ByteArr(0) = Int(Zahl / 256 ^ 3)
ByteArr(1) = Int((Zahl Mod 256& * 256& * 256&) / 256 ^ 2)
ByteArr(2) = Int((Zahl Mod 256& * 256&) / 256)
ByteArr(3) = Zahl Mod 256
End Sub
 
Public Sub WSockSendenB(TextB As String)
On Error Resume Next
Dim TextLaenge As String
Dim TextLaengeArr() As Byte
LongNachByte LenB(TextB), TextLaengeArr
TextLaenge = TextLaengeArr
Dim asdaArr() As Byte
asdaArr = TextLaenge & TextB
Winsock1.SendData asdaArr
If Not Err.Number = 0 Then
    Winsock1.Close
    Winsock1_Close
End If
End Sub
 
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    KeyAscii = 0
    If Command1.Enabled Then Command1_Click
End If
End Sub
 
Private Sub TimerLeerlaufErhalten_Timer()
WSockSendenB ""
End Sub
 
Private Sub TimerVerbinden_Timer()
TimerVerbinden.Enabled = False
Label1 = "Verbinde..."
Winsock1.Close
Winsock1.Connect
End Sub
Fortsetzung in Teil 2
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Sendkeys zu ein anderen PC1.201einet24.06.09 14:23
Re: Sendkeys zu ein anderen PC792Preisser24.06.09 18:25
Re: Sendkeys zu ein anderen PC761einet25.06.09 19:19
Re: Sendkeys zu ein anderen PC741Preisser26.06.09 15:44
Teil 2: Sendkeys zu ein anderen PC839Preisser26.06.09 15:45
Teil 3: Sendkeys zu ein anderen PC712Preisser26.06.09 15:46
Teil 4: Sendkeys zu ein anderen PC749Preisser26.06.09 15:47
Re: Teil 4: Sendkeys zu ein anderen PC767einet26.06.09 21:45
Re: Teil 4: Sendkeys zu ein anderen PC796Preisser26.06.09 23:09
Re: Teil 4: Sendkeys zu ein anderen PC739einet27.06.09 00:34
Re: Teil 4: Sendkeys zu ein anderen PC701Preisser04.07.09 18:47
Re: Sendkeys zu ein anderen PC717einet27.06.09 13:59
Re: Sendkeys zu ein anderen PC788einet06.07.09 18:01

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel