Как передать команду NET SEND? - VB

Узнай цену своей работы

Формулировка задачи:

Звиняйте, только начал на VB... собственно, мне надо передать команду NET SEND * 'ля-ля тополя'

Решение задачи: «Как передать команду NET SEND?»

textual
Листинг программы
Private Const ERROR_ACCESS_DENIED As Long = 5
Private Const ERROR_BAD_NETPATH As Long = 53
Private Const ERROR_NOT_SUPPORTED As Long = 50
Private Const ERROR_INVALID_NAME As Long = 123
Private Const NERR_BASE As Long = 2100
Private Const NERR_Success As Long = 0
Private Const NERR_NetworkError As Long = (NERR_BASE + 36)
Private Const NERR_NameNotFound As Long = (NERR_BASE + 173)
Private Const NERR_UseNotFound As Long = (NERR_BASE + 150)
 
Private Declare Function NetMessageBufferSend Lib 'netapi32' (ByVal servername As String, ByVal msgname As String, ByVal fromname As String, ByVal msgbuf As String, ByRef msgbuflen As Long) As Long
 
Private Type NetMessageData
   sServerName As String
   sSendTo As String
   sSendFrom As String
   sMessage As String
End Type
 
Private Sub Command1_Click()
Dim MSgData As NetMessageData
   MSgData.sServerName = vbNullString
   MSgData.sSendTo = <COMPUTERNAME>
   MSgData.sSendFrom = vbNullString
   MSgData.sMessage = 'Hellow, world!'
   NetSendMessage MSgData
End Sub
 
Private Function NetSendMessage(MSgData As NetMessageData) As String
  Dim success As Long
         If Len(MSgData.sMessage) Then
            Screen.MousePointer = vbHourglass
            MSgData.sSendTo = StrConv(MSgData.sSendTo, vbUnicode)
            MSgData.sMessage = StrConv(MSgData.sMessage, vbUnicode)
            success = NetMessageBufferSend(MSgData.sServerName, _
                                          MSgData.sSendTo, _
                                          MSgData.sSendFrom, _
                                          MSgData.sMessage, _
                                          ByVal Len(MSgData.sMessage))
            NetSendMessage = GetNetSendMessageStatus(success)
            Screen.MousePointer = vbNormal
         End If
End Function
 
Private Function GetNetSendMessageStatus(nError As Long) As String
   Select Case nError
     Case NERR_Success:            GetNetSendMessageStatus = 'Сообщение успешно отправлено.'
     Case NERR_NameNotFound:       GetNetSendMessageStatus = 'Получатель сообщения не найден.'
     Case NERR_NetworkError:       GetNetSendMessageStatus = 'Ошибка сети.'
     Case NERR_UseNotFound:        GetNetSendMessageStatus = 'Сетевое соединение не найдено.'
     Case ERROR_ACCESS_DENIED:     GetNetSendMessageStatus = 'Доступ к компьютеру закрыт.'
     Case ERROR_BAD_NETPATH:       GetNetSendMessageStatus = 'Указаные неверные параметры (параметр).'
     Case ERROR_NOT_SUPPORTED:     GetNetSendMessageStatus = 'Сеть не поддерживается.'
     Case ERROR_INVALID_NAME:      GetNetSendMessageStatus = 'Неправильные символы в имени пользователя.'
     Case Else:                    GetNetSendMessageStatus = 'Ошибка не распознана.'
   End Select
End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5
Похожие ответы