Option Explicit
Private Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
Nsize As Long) As Long
Private Sub Workbook_Open()
Dim Buffer As String * 100
Dim BuffLen As Long
Dim FName As String
Dim FNo As Integer
Dim Txt As String
Dim x
BuffLen = 100
FName = ThisWorkbook.Path & Application.PathSeparator & "NetSend.BAT"
FNo = FreeFile
GetUserName Buffer, BuffLen
Txt = "NET SEND " & Left(Buffer, BuffLen - 1) & " Hello"
Open FName For Output As #FNo
Print #FNo, Txt
Close #FNo
x = Shell(FName, 1)
End Sub
Private Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
Nsize As Long) As Long
Dim Buffer As String * 100
Dim BuffLen As Long
BuffLen = 100
GetUserName Buffer, BuffLen
'** NAME OF BATCH FILE **
FName = ThisWorkbook.Path & Application.PathSeparator & "NetSend.BAT"
'** NUMBER OF NEXT FREE FILE **
FNo = FreeFile
'** TEXT TO WRITE TO BATCH FILE **
Txt = "NET SEND " & Left(Buffer, BuffLen - 1) & " Hello"
'** OPEN THE BATCH FILE **
Open FName For Output As #FNo
'** WRITE THE NET SEND TEXT TO IT **
Print #FNo, Txt
'** CLOSE THE BATCH FILE **
Close #FNo
x = Shell(FName, 1)