duda con APIS!?

Iniciado por Sai-To, 18 Mayo 2008, 20:48 PM

0 Miembros y 1 Visitante están viendo este tema.

Sai-To

Bueno me han surgio unas dudas con las APIS...

Declare Function NetMessageBufferSend Lib "NETAPI32.DLL" (yServer As Any, yToName As Byte, yFromName As Any, yMsg As Byte, ByVal lSize As Long) As Long

y encontre este ejemplo pero no lo entiendo bien a ver si alguien me lo puede explicar mejor! :S

Private Declare Function NetMessageBufferSend Lib _
  "NETAPI32.DLL" (yServer As Any, yToName As Byte, _
  yFromName As Any, yMsg As Byte, ByVal lSize As Long) As Long
Private Const NERR_Success As Long = 0&
Public Function SendMessage(RcptToUser As String, _
   FromUser As String, BodyMessage As String) As Boolean

   Dim RcptTo() As Byte
   Dim From() As Byte
   Dim Body() As Byte

   RcptTo = RcptToUser & vbNullChar
   From = FromUser & vbNullChar
   Body = BodyMessage & vbNullChar

   If NetMessageBufferSend(ByVal 0&, RcptTo(0), ByVal 0&, _
        Body(0), UBound(Body)) = NERR_Success Then
     SendMessage = True
   End If
End Function

Private Sub Form_Load()
    Dim RetVal As Boolean
    RetVal = SendMessage("Utente", "FromUser", "BodyText")
End Sub


esta es la que sirve como el net send?... y como podria implementar un envio a todas las maquinas ya que solo consegui un poco de informacion de esta en una web.. pero solo me la describen?

GetWindowText

Que es lo que hace en su TOTALIDAD (se que hace pero no entiendo bien) esta API osea me devuelve el titulo o el texto de que.. y para que me serviria?

Bueno hasta los momentos son todas mis preguntas! ;)...

Espero no ser molestia gRacias por adelantado!

naderST

Solo te puedo responder lo de la api GetWindowText, pues esta api te sirve para obtener el texto de una ventana.

Sai-To

exacto epro el texto de que a eso me referia por ejemplo puedo obtener el texto del titulo de esta!?

Lambda

Cita de: brache en 18 Mayo 2008, 21:45 PM
exacto epro el texto de que a eso me referia por ejemplo puedo obtener el texto del titulo de esta!?

si, solo necesitas el handle de la ventana para hacerlo

Freeze.

Aca tienes, lo acabo de hacer si tiene errores me avisas :P

Y recuerda abrir la calculadora :P
Código (vb) [Seleccionar]
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Sub Form_Load()
Dim Handle As Long
Dim Buff As String
Dim res As Integer
Buff = Space(255)
Handle = FindWindow("sciCalc", vbNullString) // El 2do parametro se refiere al titulo de la ventana, pero si eso es lo que queremos averiguar no tiene ningún sentido
res = GetWindowText(Handle, Buff, Len(Buff))
MsgBox Buff
End Sub

~~

Usa la msdn viene todo explicado, con ejemplos y esas cosas, es genial ;)

Sai-To

jaja grax a todos! ;)... jaja grax freeze tus ejemplos me ayudan! :P.. y EON por mas tonto que suene!xD no entiendo como usar el MSDN

~~

Jajaja pues es muy simple, si no te kieres complicar la vida pones en google "MSDN + nombre del api" y te sale (casi) siempre en el primer enlace

http://msdn.microsoft.com/en-us/library/ms633520.aspx
http://msdn.microsoft.com/en-us/library/aa370605(VS.85).aspx

Te lees la descripción y arreglado, si no bajate el api guide q vienen muy buenos ejemplos ;)

Salu2