Hola cómo estan, estuverevisando el foro pero no encontre alguna solución que me permita enviar un mensaje a una Pc en una red Lan, encontre un código en la web, pero bueno no me resulta, alguien, quizas podra ver el error, porque me sale un mensaje: "Mensaje no enviado"
-Un form
- Un modulo
El form consta de los sgtes. controles:
1)text (que se escribira el nombre de la maquina a quien se desea enviar el mensaje
2)text ( que se podra escribir el mensaje) Propiedad:multiline
1er) command1, (que servira para enviar)
2do) command2, para borrar
3er) command3, para salir.
consta del sgte. código:en el form
............
Private Sub Command1_Click()
Dim ret As Long
ret = NetSendMessage(Text1.Text, Text2.Text)
If ret <> 0 Then
MsgBox NetSendErrorMessage(ret), vbCritical, "Error"
Else
MsgBox NetSendErrorMessage(ret), vbInformation, "NetSend"
End If
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
End Sub
Private Sub Command3_Click()
Unload Me
End Sub
Private Sub Exit_Click()
Unload Me
End Sub
Private Sub Form_Load()
End Sub
..............
Y en el modulo:
..........
Option Explicit
Private Declare Function NetMessageBufferSend Lib "netapi32.dll" _
(ByVal servername As String, _
ByVal msgname As String, _
ByVal fromname As String, _
ByVal Buffer As String, _
ByVal BufSize As Long) As Long
Private Const NERR_SUCCESS As Long = 0
Private Const NERR_BASE As Long = 2100
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 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_PARAMETER As Long = 87
Private Const ERROR_INVALID_NAME As Long = 123
Public Function NetSendMessage(ByVal sSendTo As String, ByVal sMessage As String) As Long
Dim ret As Long
sSendTo = StrConv(sSendTo, vbUnicode)
sMessage = StrConv(sMessage, vbUnicode)
NetSendMessage = NetMessageBufferSend(vbNullString, sSendTo, vbNullString, _
sMessage, Len(sMessage))
End Function
Public Function NetSendErrorMessage(ErrNum As Long) As String
Select Case ErrNum
Case NERR_SUCCESS
NetSendErrorMessage = "Mensaje enviado satisfactoriamente."
Case NERR_NameNotFound
NetSendErrorMessage = "Mensaje no enviado."
Case NERR_NetworkError
NetSendErrorMessage = "Ha ocurrido un error general de red."
Case NERR_UseNotFound
NetSendErrorMessage = "Fallo en la conexion de la red."
Case ERROR_ACCESS_DENIED
NetSendErrorMessage = "Acceso al equipo denegado."
Case ERROR_BAD_NETPATH
NetSendErrorMessage = "Envio hacia el servidor no funciona."
Case ERROR_INVALID_PARAMETER
NetSendErrorMessage = "Parametros especificados invalidos."
Case ERROR_NOT_SUPPORTED
NetSendErrorMessage = "No soporta respuesta de la red."
Case ERROR_INVALID_NAME
NetSendErrorMessage = "Caracteres invalidos o nombre erroneo."
Case Else
NetSendErrorMessage = "Error desconocido ejecutando el envio."
End Select
End Function
........
Alguein lo puede probar y encontrar el error. Gracias