Rubrik: HTML/Internet/Netzwerk · Netzwerk | VB-Versionen: VB4, VB5, VB6 | 07.01.02 |
Popup-Frontend für das Senden unter XP nachrüsten Popups unter XP empfangen ist ja kein Problem, leider ist das Senden nur auf Komandozeilenebene mit Net Send möglich, hier ein kleines Frontend dazu. | ||
Autor: Peter Leenders | Bewertung: | Views: 14.968 |
ohne Homepage | System: WinXP, Win8, Win10, Win11 | Beispielprojekt auf CD |
Popups unter XP empfangen ist ja kein Problem, leider ist das Senden nur auf Komandozeilenebene mit Net Send möglich.
Um ein entsprechendes Frontend nachzurüsten, bedarf es nur weniger Zeilen Code (der aufwendigste Codeteil ist das Ermitteln des System-Ordners).
Erzeugen Sie ein Formular mit zwei Textboxen (txtRecipient für Empfänger + txtMessage für den zu versendenen Text)und zwei Buttons (cmdSend für normales Senden mit anschliessendem Löschen des Textes, und cmdSendNoClear für Senden ohne Löschen der Nachricht, um diese z.B. an verschiedene Personen zu schicken). Um mehrzeilige Texte zu versenden sollte man die Eigenschaft der txtMessage-TextBox auf Multiline = True setzen.
Aus optischen Günden kann man jetzt zu den Textboxen noch jeweils ein Frame gruppieren (Empfänger und Text), damit das Ganze in etwa wie PopUp unter den alten Windowsversionen aussieht und dem Formular noch ein entsprechendes Icon zuordnen.
Eine Empfangsroutine braucht nicht nachgerüstet werden, da dies schon vom System aus erfolgt. Allerdings ist ein direktes Reply hier nicht möglich.
Hier die wenigen notwendigen Zeilen Code:
' Code für das Ermitteln des Windows-/System Ordners Private Declare Function GetSystemDirectory Lib "kernel32" _ Alias "GetSystemDirectoryA" ( _ ByVal lpBuffer As String, _ ByVal nSize As Long) As Long ' Windows-System-Verzeichnis ermitteln Public Function GetSystemDir() As String Dim Temp As String Dim lResult As Long Temp = Space$(256) lResult = GetSystemDirectory(Temp, Len(Temp)) Temp = Left$(Temp, lResult) If Right$(Temp, 1) <> "\" Then Temp = Temp + "\" GetSystemDir = Temp End Function
' Nachricht senden Public Sub NetSend(ByVal SendTo As String, _ ByVal Message As String) Dim SysDir As String SysDir = GetSystemDir() Shell SysDir & "net.exe send " & _ SendTo & " " & Message End Sub
' Senden + Nachricht löschen Private Sub cmdSend_Click() NetSend txtRecipient.Text, txtMessage.Text txtRecipient.Text = "" txtMessage.Text = "" End Sub ' Senden ohne "Löschfunktion" Private Sub cmdSendNoClear_Click() NetSend txtRecipient.Text, txtMessage.Text End Sub