Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - el_c0c0

#31
Cita de: Karcrack en 10 Febrero 2010, 20:48 PM
Es que nadie piensa en las APIs del WinInet? :-(
http://msdn.microsoft.com/en-us/library/aa385331(VS.85).aspx

No creo que encuentres un sustituto ya hecho para el control INET, pero puedes hacertelo tu y luego compartirlo :D!

aparte, creo q con el control de cobein, el que usaba el AsyncRead esta mil veces mejor.

pero bueno, con APIs podes :D

saludos
#32
Cita de: Karcrack en 10 Febrero 2010, 17:55 PM
Código (vb) [Seleccionar]
'USER32
Private Declare Function CallThunk8 Lib "USER32" Alias "CallWindowProcW" (ByRef cThunk As Currency, Optional ByVal Param1 As Long = 0, Optional ByVal Param2 As Long = 0, Optional ByVal Param3 As Long = 0, Optional ByVal Param4 As Long = 0) As Long

'---------------------------------------------------------------------------------------
' Procedure : FS_GetCurrentProcessId
' Author    : Karcrack
' Date      : 23/09/2009
' Purpose   : GetCurrentProcessId@Kernel32 alternative. Reads info from TIB
'---------------------------------------------------------------------------------------
'
Public Function FS_GetCurrentProcessId() As Long
    '                                   mov eax, [FS:0x20]
    FS_GetCurrentProcessId = CallThunk8(-801556291178721.2444@)
End Function

Pensaba que lo habia posteado aqui, pero no lo he encontrado, asi que aqui teneis! ;)

Lo que hace este codigo es leer el TIB para sacar nuestro PID :P

Cualquier duda... preguntais! ;D

Saludos ::)

piolete, creo haberlo visto en el blog de cobein :D
saludos
#33
Cita de: ssccaann43 en  9 Febrero 2010, 23:05 PM
...

che scan, todo piolo, yo le pondria bordes con regiones, pero bueno no importa. despues, no existe esa ruta de registro (por lo menos en mi pc) y el programa no falla, ni nada. ahora, no se porque no existe.

en fin, debe ser q es win7, u otra version de msn, o que ya esta parcheada, no se.


El problema viene a raiz de que es 64 bits el sistema y esas rutas se mueven virtualmente a otra. El programa funciona igual, ningun cambio. perfecto ;)
saludos
#34
Cita de: xmbeat92 en 10 Febrero 2010, 04:18 AM
bueno, he visto que algunos de aqui usan esto para sus aplicaciones, pero yo solo le agregué un "efecto" mas  ;D para que se vea como el original de otras aplicaciones, como el Ares u otras babosadas....


'insertar un command button
Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type
Private Type NOTIFYICONDATA
   cbSize As Long
   hwnd As Long
   uID As Long
   uFlags As Long
   uCallbackMessage As Long
   hIcon As Long
   szTip As String * 128
   dwState As Long
   dwStateMask As Long
   szInfo As String * 256
   uTimeout As Long
   szInfoTitle As String * 64
   dwInfoFlags As Long
End Type

Private Const NOTIFYICON_VERSION = 3
Private Const NOTIFYICON_OLDVERSION = 0
 
Private Const NIM_ADD = &H0
Private Const NIM_MODIFY = &H1
Private Const NIM_DELETE = &H2
 
Private Const NIM_SETFOCUS = &H3
Private Const NIM_SETVERSION = &H4
 
Private Const NIF_MESSAGE = &H1
Private Const NIF_ICON = &H2
Private Const NIF_TIP = &H4
 
Private Const NIF_STATE = &H8
Private Const NIF_INFO = &H10
 
Private Const NIS_HIDDEN = &H1
Private Const NIS_SHAREDICON = &H2
 
Private Const NIIF_NONE = &H0
Private Const NIIF_WARNING = &H2
Private Const NIIF_ERROR = &H3
Private Const NIIF_INFO = &H1
Private Const NIIF_GUID = &H4
 
Private Const WM_MOUSEMOVE = &H200
Private Const WM_LBUTTONDOWN = &H201
Private Const WM_LBUTTONUP = &H202
Private Const WM_LBUTTONDBLCLK = &H203
Private Const WM_RBUTTONDOWN = &H204
Private Const WM_RBUTTONUP = &H205
Private Const WM_RBUTTONDBLCLK = &H206

Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function DrawAnimatedRects Lib "user32" (ByVal hwnd As Long, ByVal idAni As Long, lprcFrom As RECT, lprcTo As RECT) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As NOTIFYICONDATA) As Boolean

Private Sub MinimizeToTray(Poner As Boolean, Optional Titulo As String, _
Optional Contenido As String, Optional ToolTip As String)
On Error Resume Next
Dim SisIcon As Long
Dim TrW As Long
Dim sRect As RECT
Dim dRect As RECT
Static Systray As NOTIFYICONDATA
With Systray
        .cbSize = Len(Systray)
        .hwnd = Me.hwnd
        .uID = vbNull
        .uFlags = NIF_ICON Or NIF_INFO Or NIF_MESSAGE Or NIF_TIP
        .uCallbackMessage = WM_MOUSEMOVE
        .hIcon = Me.Icon
        .dwStateMask = 0
        .szTip = ToolTip & Chr(0)
        .dwState = &H2
        .dwStateMask = 0
        .szInfo = Contenido & Chr(0)
        .szInfoTitle = Titulo
        .dwInfoFlags = NIIF_INFO
        .uTimeout = 100
  End With
App.TaskVisible = Not (Poner)
SisIcon = FindWindow("Shell_TrayWnd", "") 'ENCONTRAMOS LA BARRA DE TAREAS
TrW = FindWindowEx(SisIcon, ByVal 0&, "TrayNotifyWnd", vbNullString) 'ENCONTRAMOS _
EL AREA DE NOTYCACIONES
GetWindowRect TrW, sRect 'Obtenemos la posicion del AREA
sRect.Right = sRect.Left
sRect.Bottom = sRect.Top
GetWindowRect Me.hwnd, dRect
'Obtenemos la posicion  de nuestro Form
'Otra forma >>|
'SetRect dRect, Me.Left / Screen.TwipsPerPixelX, Me.Top / Screen.TwipsPerPixelY, _
'(Me.Left + Me.Width) / Screen.TwipsPerPixelX, (Me.Top + Me.Height) / Screen.TwipsPerPixelY
If Poner Then
Me.Visible = False
DrawAnimatedRects Me.hwnd, &H3, dRect, sRect
Shell_NotifyIcon NIM_ADD, Systray
Shell_NotifyIcon NIM_MODIFY, Systray
Else
DrawAnimatedRects Me.hwnd, &H3, sRect, dRect
Me.Visible = True
Shell_NotifyIcon NIM_DELETE, Systray
End If
End Sub

Private Sub Command1_Click()
MinimizeToTray True, "Algo por aqui", "Que coño me ves", "Tu mama se la come"
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim Mensaje As Long
On Local Error Resume Next
If (ScaleMode = vbPixels) Then
    Mensaje = X
Else
    Mensaje = X / Screen.TwipsPerPixelX
End If
If Me.Visible = False Then
If Mensaje = WM_LBUTTONDBLCLK Then
MinimizeToTray False
ElseIf Mensaje = WM_RBUTTONDOWN Then
'aqui ponen algun menu que quieren que se muestre
End If
End If
End Sub




el code es seguro que ya lo sepan pero por si no

mira vos, yo no lo conocia. buen aporte :D

saludos
#35
Cita de: Karcrack en 30 Enero 2010, 13:43 PM
Cita de: E.P.I en 30 Enero 2010, 13:05 PM
Hola,

quería preguntar una estupidez... tengo un código en C++ y quiero hacer la GUI en VB. Creo una dll en C++, y después... ¿cómo la incorporo en VB? ¿Con LoadLibrary? Si ese es el caso, ¿me lo podrían explicar?

Muchas gracias.
No compiles la DLL con la conveccion de llamada CDECL, sino con stdcall ;)

Con CDECL y el modulo cCDECL podes usar las funciones de manera dinamica, es decir, no las declaras.. el tema es si manejas objetos, se te puede llegar a complicar. pero de todas formas, creo q con STDCALL vas a ir bien :D

y en stdcall declaras mas o menos asi:
Código (vb) [Seleccionar]
Declare Function FuncName Lib "tuDll.dll" (ByVal param1 As Long) As Long

saludos
#36
Cita de: seba123neo en 19 Enero 2010, 01:22 AM
...

very good seba. and the thing to use SND_ASYNC its good too, to not lock the process.

bye
#37
Cita de: ntaryl en 18 Enero 2010, 22:11 PM
thanks  for the  fast reply 
this  is my  example   
http://rapidshare.com/files/337400568/res-dll.rar.html
thanks  for the  tips  El_coco
in  local way  is  ok   
only with the dll  i  cant   
Thanks  for the time 

the example  come  from  thevbzone


i think you could load the dll, and get it hInstance, so, use that instead app.hinstance. i really dont know if it will work, but you can check.

BTW. i can't download your example, beacause stupid rapid share is overloaded!

by
#38
Cita de: ntaryl en 18 Enero 2010, 19:56 PM
Good  evening 
I  try  this time  to load a res wav file from  dll   .but  no luck   
use this  example 
but  i dont  know  what the  wrong 
i successed to load from main project  and after try from dll  but something is wrong   
someone  can point me to  the correct way   




hi nyaryl, well, i remember that .. isnt hard... here you got a TIP to do that:
http://www.devx.com/tips/Tip/12595

by
#39
Cita de: SOMBRIO en 10 Enero 2010, 22:16 PM
Hola les dejo este programita que hace maravillas pasa de vb6 a c++ builder a vb.net a c#.net delphi java etc..

No se si vaya bien aqui pero lo pongo en esta area por que es donde se ocuparia y no donde estan los reproductores los programas graficos etc..
Creo aqui va mejor

http://www.megaupload.com/?d=6M41U75P
este es portable

http://rapidshare.com/files/333351599/vbto_1_.converter.2.44.full.incl.crack.n.keygen-tsrh.zip.html
y este es instalable full
instalan copian el keygen a la carpeta donde se instalo ponen el parche y con el generador les crea la clave la ponen y listo
el hw id es el hardware fingerprint que da el programa

Saludos

lo probe en una virtual, porque me tiraba que era virus. fuera de eso, convirtio a C++ MFC, pero ningun proyecto que probe, funco en c++ mfc, le falta mas trabajo para que funcione.. pero gracias por el aporte

saludos!
#40
Cita de: seba123neo en  8 Diciembre 2009, 15:47 PM
yo para bajarlo usaria descarga asincrona (la de los usercontrols),no esa api que hasta te puede saltar el antivirus y te traba todo el programa.

saludos.

Cita de: xkiz en  8 Diciembre 2009, 18:49 PM
1º, no creo que salte los AV con esa api URLDownloadToFile la use muchas veces en y nunca salto nada, tambien dependeria de lo que se esta bajando, pero en fin yo tambien haria lo que dice Seba, por ahi habia un UC de Cobein que descargaba, estaba muy bien echo, ahora no lo puedo encontrar....

Te salta en varios AV esa api. El UC es la mejor solucion.

Ahora, con el tema de instalarlo solo, busca si el instalador tiene algun parametro de "silent" o algo por el estilo.

saludos