elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ... 28
71  Programación / Programación Visual Basic / mostrar ventana, pero no quitar foco de la actual en: 21 Junio 2008, 12:30 pm
me gustaria saber como lograr mostrar un form qu tengo cargado (Load FormName) pero que esta con la propiedad visible en false (esto lo se hacer), pero sin quitarle el foco a la ventana actual (esto es lo que no se).

se me ocurre que deberia "fijarme" cual es la ventana activa y al mostrar la que yo quiero devolverle el foco con sendmensage o algo asi.... pero no se como hacerlo, si alguien me pudiera dar una mano estaria agradecido.

desde ya, muchas gracias.
72  Programación / Programación Visual Basic / Re: como hacer un buscador en: 21 Junio 2008, 01:50 am
Ejemplo de Api Guide:

Código
  1. 'Create a form with a command button (command1), a list box (list1)
  2. 'and four text boxes (text1, text2, text3 and text4).
  3. 'Type in the first textbox a startingpath like c:\
  4. 'and in the second textbox you put a pattern like *.* or *.txt
  5.  
  6. Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
  7. Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
  8. Private Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long
  9. Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
  10.  
  11. Const MAX_PATH = 260
  12. Const MAXDWORD = &HFFFF
  13. Const INVALID_HANDLE_VALUE = -1
  14. Const FILE_ATTRIBUTE_ARCHIVE = &H20
  15. Const FILE_ATTRIBUTE_DIRECTORY = &H10
  16. Const FILE_ATTRIBUTE_HIDDEN = &H2
  17. Const FILE_ATTRIBUTE_NORMAL = &H80
  18. Const FILE_ATTRIBUTE_READONLY = &H1
  19. Const FILE_ATTRIBUTE_SYSTEM = &H4
  20. Const FILE_ATTRIBUTE_TEMPORARY = &H100
  21.  
  22. Private Type FILETIME
  23.    dwLowDateTime As Long
  24.    dwHighDateTime As Long
  25. End Type
  26.  
  27. Private Type WIN32_FIND_DATA
  28.    dwFileAttributes As Long
  29.    ftCreationTime As FILETIME
  30.    ftLastAccessTime As FILETIME
  31.    ftLastWriteTime As FILETIME
  32.    nFileSizeHigh As Long
  33.    nFileSizeLow As Long
  34.    dwReserved0 As Long
  35.    dwReserved1 As Long
  36.    cFileName As String * MAX_PATH
  37.    cAlternate As String * 14
  38. End Type
  39. Function StripNulls(OriginalStr As String) As String
  40.    If (InStr(OriginalStr, Chr(0)) > 0) Then
  41.        OriginalStr = Left(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
  42.    End If
  43.    StripNulls = OriginalStr
  44. End Function
  45.  
  46. Function FindFilesAPI(path As String, SearchStr As String, FileCount As Integer, DirCount As Integer)
  47.    'KPD-Team 1999
  48.    'E-Mail: KPDTeam@Allapi.net
  49.    'URL: http://www.allapi.net/
  50.  
  51.    Dim FileName As String ' Walking filename variable...
  52.    Dim DirName As String ' SubDirectory Name
  53.    Dim dirNames() As String ' Buffer for directory name entries
  54.    Dim nDir As Integer ' Number of directories in this path
  55.    Dim i As Integer ' For-loop counter...
  56.    Dim hSearch As Long ' Search Handle
  57.    Dim WFD As WIN32_FIND_DATA
  58.    Dim Cont As Integer
  59.    If Right(path, 1) <> "\" Then path = path & "\"
  60.    ' Search for subdirectories.
  61.    nDir = 0
  62.    ReDim dirNames(nDir)
  63.    Cont = True
  64.    hSearch = FindFirstFile(path & "*", WFD)
  65.    If hSearch <> INVALID_HANDLE_VALUE Then
  66.        Do While Cont
  67.        DirName = StripNulls(WFD.cFileName)
  68.        ' Ignore the current and encompassing directories.
  69.        If (DirName <> ".") And (DirName <> "..") Then
  70.            ' Check for directory with bitwise comparison.
  71.            If GetFileAttributes(path & DirName) And FILE_ATTRIBUTE_DIRECTORY Then
  72.                dirNames(nDir) = DirName
  73.                DirCount = DirCount + 1
  74.                nDir = nDir + 1
  75.                ReDim Preserve dirNames(nDir)
  76.            End If
  77.        End If
  78.        Cont = FindNextFile(hSearch, WFD) 'Get next subdirectory.
  79.        Loop
  80.        Cont = FindClose(hSearch)
  81.    End If
  82.    ' Walk through this directory and sum file sizes.
  83.    hSearch = FindFirstFile(path & SearchStr, WFD)
  84.    Cont = True
  85.    If hSearch <> INVALID_HANDLE_VALUE Then
  86.        While Cont
  87.            FileName = StripNulls(WFD.cFileName)
  88.            If (FileName <> ".") And (FileName <> "..") Then
  89.                FindFilesAPI = FindFilesAPI + (WFD.nFileSizeHigh * MAXDWORD) + WFD.nFileSizeLow
  90.                FileCount = FileCount + 1
  91.                List1.AddItem path & FileName
  92.            End If
  93.            Cont = FindNextFile(hSearch, WFD) ' Get next file
  94.        Wend
  95.        Cont = FindClose(hSearch)
  96.    End If
  97.    ' If there are sub-directories...
  98.    If nDir > 0 Then
  99.        ' Recursively walk into them...
  100.        For i = 0 To nDir - 1
  101.            FindFilesAPI = FindFilesAPI + FindFilesAPI(path & dirNames(i) & "\", SearchStr, FileCount, DirCount)
  102.        Next i
  103.    End If
  104. End Function
  105. Sub Command1_Click()
  106.    Dim SearchPath As String, FindStr As String
  107.    Dim FileSize As Long
  108.    Dim NumFiles As Integer, NumDirs As Integer
  109.    Screen.MousePointer = vbHourglass
  110.    List1.Clear
  111.    SearchPath = Text1.Text
  112.    FindStr = Text2.Text
  113.    FileSize = FindFilesAPI(SearchPath, FindStr, NumFiles, NumDirs)
  114.    Text3.Text = NumFiles & " Files found in " & NumDirs + 1 & " Directories"
  115.    Text4.Text = "Size of files found under " & SearchPath & " = " & Format(FileSize, "#,###,###,##0") & " Bytes"
  116.    Screen.MousePointer = vbDefault
  117. End Sub
  118.  
73  Programación / Programación Visual Basic / Re: Error de acceso a memoria (no trabajo con memoria :S) en: 21 Junio 2008, 00:41 am
AsyncThread es una Sub publica.
Citar
Public Sub AsyncThread()


Lo que me resulta llamativo es que el programa crea 2 threads, y solo este me da problemas, ahroa estoy mirando en el codigo a ver si hay algo diferente entre ambos.


EDIT:

Citar
si subieras un poco de code no tendríamos que andar con estas.

es una simple creación de un thread que llama a una sub que usa una api la cual ya he dicho, cualqueira puede reproducir el error con un poco  ganas.... no se porque la insistencia con el code ¬¬


estableciendo hthreadid en 5 da el mismo error.


cobein, como es eso de usar IBindStatusCallback  ???

ah, y un OT para cobein jeje.... has hecho algo sobre el tema de ocultar un exe dentro de otro e inyectarlo desde un byte array????.... me interesa mucho jeje

EDIT2: He usado como base para la creación del thread un ejemplo del apiguide

EDIT3: Dato importante, el error hasta ahora solo lo he visto en Windows XP con SP2, probe en Win98 SE y no arroja errores (raro, porque Win98 es muy "quisquilloso" con la memoria).

Dentro de unas horas probate con XP SP3, y Vista Ultimate (sin SP)

EDIT4: al parcer el error solo ocurre cuando se llama por primera vezal thread desde el form-load, luego no ocurre cuando es llamado por un timr que ejecuta el thread cada x minutos. el error no sale siempre, solo aveces cuando se ejecuta la aplicacion. Si no se acepta (ni cancela) el error del thread la aplicacion continua funcionando hasta qeu se cierre el mnsaje del error que genero el thread.... algo raro.
74  Programación / Programación Visual Basic / Re: Error de acceso a memoria (no trabajo con memoria :S) en: 19 Junio 2008, 18:35 pm
a ver... no intento acceder a ninguna posicion de memoria, ahi esta el problema.

simplement creo un thread que dscarga un archivo usando api, y arroja ese error (no siempre, esto es lo más curioso).

el thread es creado de la unica forma posible, no hay buena o mala, solo hay una:
Código
  1.        hThread = CreateThread(ByVal 0&, ByVal 0&, AddressOf AsyncThread, ByVal 0&, ByVal 0&, hThreadID)
  2.  

donde AsyncThread es la funcion qu descarga el archivo en cuestion usando la API URLDownloadToFile


Código
  1. Private Declare Function URLDownloadToFile Lib "urlmon" Alias _
  2. "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal _
  3. szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
  4.  


es por esto que posteo preguntando, porque no hay forma de que yo este tratandod e acceder a memoria, mucho menos  una posicion invalida (0x0 es una posicion del sistema)... asi qeu no cmoprendo, este error me tiene algo loco.... no dberia estar allí.
75  Programación / Programación Visual Basic / Re: IDE or EXE en: 17 Junio 2008, 23:27 pm
yo miro si el proceso padre es vb6.exe, lueg probaer alguna de las que ofreces.

Gracias.
76  Programación / Programación Visual Basic / Re: Como crear un DLL de iconos como el SHELL32.dll? en: 17 Junio 2008, 23:24 pm
amigo, a lo que skullsp se referia es a algo mas simple y quizas te suene antipatico, pero es asi:

Este foro es de vb, si quires discutir sobre asm ve a otro foro. aqui solo vb.


Atte: El usuario más antipatico de la red
77  Programación / Programación Visual Basic / Re: Ayuda con VB6 el explorer.exe en: 17 Junio 2008, 11:15 am
si, seguramente lo sea, pero hayq eu "avisarle" a windows que esa clave ha cambiado, por eso es mejor usar apis que modifiquen eso puntualmente y no el registro.
78  Programación / Programación Visual Basic / Re: Ayuda con VB6 el explorer.exe en: 17 Junio 2008, 10:48 am
hace lo siguiente....

hace un loop con los archivos del escritorio y dentro un if que vaya verificando si el atributo es oculto o normal, entonces si es oculto lo conveierte a normal y sino alrevez...

se entiende??

sl2

eso no seria bueno, si tiene 10 ocultos y 30 visibles, los pone visibles a todos, y luego... chau, seran 40 ocultos, no 10 y 30.....


investiga sobre las apis del shell de windows y el panel de control
79  Programación / Programación Visual Basic / Error de acceso a memoria (no trabajo con memoria :S) en: 17 Junio 2008, 10:43 am
Recibo el siguiente mensaje (aveces, no siempre) cuando ejecuto mi aplicacion (hecha en vb6 obviamente):




He localizado el posible origen del problema, pero aun no me explico porque sucede ni como solucionarlo.

La aplicacion crea un thread llamando a una funcion determinada que a su vez llama a la API URLDownloadToFile, descarga un archivo, analiza el contnido del archvo y ejecuta x accion segun el resultado del analisis.

En teoria no deberia corromper la memoria ni arrojar ningun error. He implementado una variable publica que es usada para prevenir la creacion de dos thread simultaneos (dado que el id del thread se almacena en una variable y si se ejecutara un segundo thread sobreescribiria el id dl primero y "se perderia" su id, no permitiendo matarlo luego)

Al finalizar la aplicacion el thread es matado en caso ed qeu siga en ejecucion. Pero repito, el problema paerce darse al crearse el thread por primera vez (cuando se ejecuta la aplicacion se lanza tl thread y luego se hace ciclicamente con un timer, comprueba informacion disponible en un sitio web).

Notese que el error no es siemper, sino aveces, quizas sea bajo ciertas condiciones del entorno que no suelen darse, pero cuando se dan... chau aplicacion. Otra cosa curiosa es que la aplicacion sigue funcionando bien, si no se acepta el msgbox de error la app sigue corriendo bien, solo se cuelga el thread.

¿Alguien sabe a que se debe y/o como solucionarlo?.

PD: me es necesario usar el thread para no "colgar" la aplicacion por unos instantes (aveces variso segundos dependiendod e la conexion), ddo qu la api URLDownloadToFile "se cuelga" hasta terminar la descarga, utilizando un thread la aplicacion sigue sin notarse ningun cuelgue. No uso winsock por una cuestion de compatibilidad con los SO y simpleza en la aplicacion (podria usar winsock por api pro es mucho codigo para un simple checkeo, y el inet control no me termina de convencer).


Desde ya muchas gracias.
80  Media / Multimedia / Re: calidades disponibls para transmitir con shoutcast [DUDA] en: 3 Junio 2008, 09:25 am
nadie sabe??????
Páginas: 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ... 28
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines