NetMessageBufferSend

Aus API-Wiki
Version vom 1. Mai 2008, 08:54 Uhr von Helge Rex (Diskussion | Beiträge) ("verwaltet von" auskommentiert)
Zur Navigation springenZur Suche springen
Die druckbare Version wird nicht mehr unterstützt und kann Darstellungsfehler aufweisen. Bitte aktualisiere deine Browser-Lesezeichen und verwende stattdessen die Standard-Druckfunktion des Browsers.

Diese Funktion sendet im Netzwerk Nachrichten mit Hilfe des Nachrichtendienstes.

Deklaration

Declare Function NetMessageBufferSend Lib "netapi32.dll" ( _
                ByRef lpServerName As Byte, _
                ByRef lpMsgName As Byte, _
                ByRef lpFromName As Byte, _
                ByRef lpBuf As Byte, _
                ByVal lnBufLen As Long) As Long


Parameter

lpServerName

[in] Name der Maschine, die die Nachricht versenden soll.
Dieser Parameter ist ein Zeiger auf NULL oder auf eine mit vbNullChar abgeschlossene Zeichenkette im Unicode-Format. Ist der Parameter NULL oder enthält die Zeichenkette nur vbNullChar, so wird die lokale Maschine zum Versenden der Nachricht verwendet.
Ist der Zeiger ungleich NULL, muß das Benutzerkonto, das diese Funktion aufruft, Mitglied in der Administratoren-, Druck- oder Server-Operator-Gruppe sein.


lpMsgName

[in] Nachricht, die versandt werden soll.
Dieser Parameter ist ein Zeiger auf NULL oder auf eine mit vbNullChar abgeschlossene Zeichenkette im Unicode-Format.


lpFromName

[in] Absender der Nachricht.
Dieser Parameter ist ein Zeiger auf NULL oder auf eine mit vbNullChar abgeschlossene Zeichenkette im Unicode-Format.
Ist der Zeiger ungleich NULL, muß das Benutzerkonto, das diese Funktion aufruft, Mitglied in der Administratoren-, Druck- oder Server-Operator-Gruppe sein.


lpBuf

[in] Nachricht, die versandt werden soll.
Dieser Parameter ist ein Zeiger auf NULL oder auf eine mit vbNullChar abgeschlossene Zeichenkette im Unicode-Format.


lnBufLen

[in] Größe der Nachricht in Byte.
Beachten Sie, daß Zeichenketten im Unicode-Format mindestens 2 Byte pro Zeichen belegen.


Rückgaben

Diese Funktion gibt einen Wert vom Typ ErrorCodeEnum zurück.


Beispiel

Dim arrbytServer() As Byte      '   Maschine, die die Nachricht sendet
Dim arrbytDest() As Byte        '   Empfänger
Dim arrbytMessage() As Byte     '   Nachricht
Dim lngResult As Long
    
'   Strings in WideChar konvertieren
arrbytServer = vbNullChar
arrbytDest = Environ$("USERNAME") & vbNullChar
arrbytMessage = "Grüße von www.activevb.de" & vbNullChar
    
'   Meldung absetzen
lngResult = NetMessageBufferSend( _
                    arrbytServer(0), _
                    arrbytDest(0), _
                    ByVal 0&, _
                    arrbytMessage(0), _
                    UBound(arrbytMessage))
                    
'   Falls ein Fehler aufgetreten ist, diesen auslesen
If lngResult <> NERR_Success Then
    Debug.Print "Fehlercode: " & Err.LastDllError
End If


Betriebsystem

Die Funktion ist unter folgenden Betriebssystemen funktionsfähig:

  • Windows NT 3.1
  • Windows NT 3.5
  • Windows NT 3.51
  • Windows NT 4.0
  • Windows NT 5.0 (2000)
  • Windows XP (32 Bit und 64 Bit)
  • Windows 2003 (32 Bit und 64 Bit)


Verweise


Quelle