netsend: sending short messages (Popups) across the Windows-Network


  • These kind of messages appear on nt, w2k, xp-clients if the messenger service is started
  • On Win 3.x 9.x, the winpopup.exe-program must be explicitely loaded
  • On MS-DOS LAN-Manager clients, a similar LanManager-module can be loaded
  • Because of the chaos in microsoft-APIs and some incompatability between os- and network-client versions and internal message-handling and capabilities, sending and receiving network-popups is not a reliable method to deliver important information: some users receive, some users don't, others incedently close the popup window and so on...
  • Messages can be send to a particular user, workstation, all Message Names (*) or a Domain (in other words: to adressable Netbios-Messagenames)
 package provide netsend 1.0
 package require Ffidl   0.5

 ffidl::callout dll_netSend {pointer-utf16 pointer-utf16 pointer-utf16 pointer-utf16 long} long \
                            [ffidl::symbol netapi32.dll NetMessageBufferSend]

 proc netSend {dest mesg {srv {}}} {
      set from $::tcl_platform(user)
      # or:
      # set from [info host]
      return [dll_netSend $srv $dest $from $mesg [expr [string length $mesg]*2]]


 package require netsend 1.0
 puts [netSend hoffmann "This is a Testmessage"]

Category Windows