XBalloonMsgDll.dll

Esta sección esta especialmente diseñada para todos aquellos usuarios que estés desarrollando plugins o aplicaciones y quieran ayuda para dichos plugins o aplicaciones.
Buenas amigos ya hace tiempo encontre una dll que se llama "XBalloonMsgDll" y es para mostrar tooltips personalizados en formato baloon... pero esta dll me trae de cabeza puesto que no saco el código he probado mil formas pero nada... aquí os dejo el código en vbnet de un ejemplo y si queréis el código source de la dll mejor que enviéis un pm o comentéis en este post puesto que el source no esta en net sino que esta en cpp y c.

Ademas del source del ejemplo en vbnet os dejo tambien un apz que lleva la dll ya compilada y un par de pruebas que he echo pero nada la verdad es que siempre acabe por darme app crash.

Un saludo ceone.

' Updated for XBalloonMsg 1.3

Option Strict Off
Option Explicit On
Friend Class Form1
Inherits System.Windows.Forms.Form

Private Structure POINTAPI
Dim X As Integer
Dim Y As Integer
End Structure
Private Declare Function XBalloonMsgShow Lib "XBalloonMsgDll.dll" (ByVal lpszTitle As String, ByVal lpszMsg As String, ByVal hCtrl As Integer, ByVal hParent As Integer, ByVal hInstance As Integer, ByVal hIcon As Integer, ByVal bUseBalloonTips As Integer, ByVal nTimeOutSeconds As Integer, ByVal pRect As Integer, ByVal bSubclassParent As Integer) As Integer
Private Declare Sub InitCommonControls Lib "comctl32.dll" ()
Private Declare Function GetFocus Lib "user32.dll" () As Integer
Private Declare Function GetParent Lib "user32.dll" (ByVal hwnd As Integer) As Integer
Private Declare Function GetCursorPos Lib "User32" (ByRef lpPoint As POINTAPI) As Integer
Private Declare Function WindowFromPoint Lib "User32" (ByVal X As Integer, ByVal Y As Integer) As Integer

Private Sub Form_Initialize_Renamed()

InitCommonControls()
ChDir(My.Application.Info.DirectoryPath)

End Sub

Private Sub ShowMessage(ByRef nIcon As Integer)

Dim ptCursor As POINTAPI
Dim hWndOver As Integer
Dim l As Integer

Call GetCursorPos(ptCursor) ' Get cursor position
hWndOver = WindowFromPoint(ptCursor.X, ptCursor.Y) ' Get window that cursor is over

' do not subclass parent for VB2005
l = XBalloonMsgShow("My Title", "This is My Message", hWndOver, GetParent(hWndOver), 0, nIcon, 1, 0, 0, 0)

End Sub
Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
Call ShowMessage(1)
End Sub

Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click
Call ShowMessage(2)
End Sub

Private Sub Command3_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command3.Click
Call ShowMessage(3)
End Sub

Private Sub Command4_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command4.Click
Call ShowMessage(10)
End Sub

Private Sub Command5_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command5.Click
Call ShowMessage(11)
End Sub

Private Sub Command6_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command6.Click
Call ShowMessage(12)
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub
End Class


Ejemplo:

HIDE: ON
Hidebb Message Hidden Description




and this is your Dll :

MediaFire.com
HIDE: ON
Hidebb Message Hidden Description


Or

dropbox.com
HIDE: ON
Hidebb Message Hidden Description



The apz file was re_UpLoaded
and Confirmed the validity of the download links and is now working in good condition
by "abood1987" 14/11/2012
very good

thank you


;) ;) ;) :demo:
test...
thanks
Si mal no recuerdo, todo el problema con esta dll era conseguir el hwnd del control para situarlo, y lo ustitui por valores x e y en pixels en otra dll...
Can anyone post a link to this file ? other than multiupload.
sorry i dont have :/
Ceone escribió:sorry i dont have :/

Do not worry I'm here :) :friends:


your code is :

Title = "My Title";
Message = "This is My Message"

window_pos = Window.GetPos(Application.GetWndHandle());
cursor_pos = DLL.CallFunction("CursorPos.dll", "GetMouseXY", "", DLL_RETURN_TYPE_STRING, DLL_CALL_STDCALL);
strlength = String.Length(cursor_pos);
delimiter = String.Find(cursor_pos, ";;", "1", false);
cursor_x = String.Left(cursor_pos, (delimiter - 1));
cursor_y = String.Right(cursor_pos, (strlength - (delimiter + 1)));
cursor_x = String.ToNumber(cursor_x);
cursor_y = String.ToNumber(cursor_y);

--hWndOver = DLL.CallFunction("user32.dll", "WindowFromPoint", cursor_x..","..cursor_y, DLL_RETURN_TYPE_INTEGER, DLL_CALL_STDCALL);
--Parent = DLL.CallFunction("user32.dll", "GetParent", hWndOver, DLL_RETURN_TYPE_INTEGER, DLL_CALL_STDCALL);

Parent = Application.GetWndHandle();
hWndOver = Application.GetWndHandle();

arg = "\""..Title.."\",\""..Message.."\","..hWndOver..","..Parent..",0,3,1,0,0,0"
Dialog.Message("", arg);

DLL.CallFunction("AutoPlay\\Docs\\XBalloonMsgDll.dll", "XBalloonMsgShow", arg, DLL_RETURN_TYPE_INTEGER, DLL_CALL_STDCALL);


--l = XBalloonMsgShow("My Title", "This is My Message", hWndOver, GetParent(hWndOver), 0, nIcon, 1, 0, 0, 0)
--result = DLL.CallFunction("user32.dll", "GetCursorPos", x..","..y, DLL_RETURN_TYPE_INTEGER, DLL_CALL_STDCALL);

and this is your Dll :

MediaFire.com
HIDE: ON
Hidebb Message Hidden Description


Or

dropbox.com
HIDE: ON
Hidebb Message Hidden Description
abood is the man!!
Thanks
miau esto me gusta
esto era lo que necesitaba
Porfa la APZ ya no existe la pueden resubir?
wow, great...
Cyberkiller escribió:Porfa la APZ ya no existe la pueden resubir?

You can download now the apz file and the dll file

:friends:
xxswed
tnks m8
Gracias

interesante probando
thank you

good ty:)