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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Temas
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
11  Media / Diseño Gráfico / Alternativa a esta fuente en: 21 Enero 2013, 23:11 pm
¿Alguien me podría decir qué fuente es la de esta web? :huh:
Código:
http://thegeekdesigner.com/

O si no lo sabéis con exactitud, agradecería que me recomendaseis alguna similar.
Gracias  :)

DoEvents! :P
12  Programación / Programación Visual Basic / Cambiar return de Api usada por un programa externo en: 15 Enero 2013, 18:37 pm
Supongamos que compilo esto y lo llamo "process.exe"
Código:
http://allapi.mentalis.org/apilist/3F67FD0ABC04BEB6623FB5C547B77976.html

¿Podría hacer desde mi programa que el nombre de todos los procesos que va listando "process.exe" siempre devolviera "elhackernet.exe"?
Algo así como hacer un hook al ejecutable, ver cuando utiliza los apis GetModuleFileNameExA(), EnumProcesses()... y cambiar su valor de retorno.

Vi algo parecido aquí:
Código:
http://memoryhacking.com/forums/viewtopic.php?f=37&t=5988

¿Es posible?, ¿alguna idea?, ¿y si utiliza invokeapis se podría hacer también? :huh:
Gracias. :-*

DoEvents! :P
13  Sistemas Operativos / Windows / Instancias múltiples de un programa. en: 15 Enero 2013, 08:59 am
Tengo un programa que sólo te deja ejecutarse una vez al mismo tiempo.

Para ello, al abrirse comprueba que no haya otro corriendo que tenga el mismo nombre. Eso es lo único que hace. Lo sé porque estuve haciendo pruebas, y si renombro y ejecuto un exe cualquiera con el nombre del programa y después intento abrir el exe del programa que hablo, detectará que ya hay uno abierto y se cerrará.
Si le cambiamos el nombre original tampoco se abrirá. :-\

He probado a correrlo desde SandBoxie sin resultados. También probé a ejecutarlo como otro usuario y nada, tampoco le puedo engañar. :¬¬

Lo siguiente que se me ocurre es utilizar ingeniería inversa, aunque he de admitir que estoy un poco verde en el tema. :silbar:

¿Alguna idea, chicos? :)
Muchas gracias.

DoEvents! :P
14  Foros Generales / Sugerencias y dudas sobre el Foro / Cambiar nombre al foro de Programación Visual Basic en: 12 Enero 2013, 13:13 pm
Propongo esto pues cada dos por tres entra gente despistada poniendo dudas y códigos de vb.net, el cual ya tiene foro específico. :-\
Creo que si se cambiara el nombre a Programación Visual Basic 6 ahorraría trabajo a los moderadores, que están moviendo temas constantemente y contribuiría a la limpieza del foro. :)

¿Qué os parece? :huh:

DoEvents! :P
15  Programación / Programación Visual Basic / [RETO] Ruta más oculta en: 11 Enero 2013, 12:14 pm
Pues eso, consiste en encontrar la manera más rápida de obtener la última carpeta accesible a partir de una ruta, los formatos válidos son estos:
Código
  1. Public Function getLastFolder(Byval sStartPath As String) As String()
  2. Public Function getLastFolder(Byval sStartPath As String) As Collection

Ejemplo:
Código
  1. Debug.Print getLastFolder("C:\Users\casa-pc\Desktop\")
  2.  
Código:
C:\Users\casa-pc\Desktop\Música\Sonido\Programas\Video\VLC\data\res

Consiste en encontrar la carpeta más profunda, en caso de haber más de una la función devolverá el resultado en una collection o en un array.

¡Suerte! :)
16  Programación / Programación Visual Basic / No consigo que mi app se ejecute al inicio en: 4 Diciembre 2012, 10:25 am
Tengo Windows 7.

Copio mi exe en la carpeta de inicio, reinicio, pero no se ejecuta.
También he probado a añadir una clave en el registro y nada...
Puede ser porque mi exe requiere permisos de administrador pues si creo un programa que tan sólo te muestre un MsgBox funciona con cualquiera de los métodos anteriores... :P

¿Alguna solución? ???

DoEvents! :P
17  Programación / Programación Visual Basic / [SRC] getShareSubFolders en: 26 Noviembre 2012, 18:55 pm
Bueno, estos códigos los he sacado para un proyecto en curso.
Devuelven un array con las subcarpetas de un servidor local.

OPCIÓN 1:

Código
  1. Option Explicit
  2. '===========================================================================
  3. ' º Name        : GetSharedSubFolders
  4. ' º Author      : Psyke1
  5. ' º Mail        : vbpsyke1@mixmail.com
  6. ' º Explanation : Returns an array with the subfolders of a shared folder.
  7. ' º Date        : 26/11/12
  8. ' º Reference   : http://goo.gl/sgDVX
  9. ' º Greets      : LeandroA
  10. ' º Visit       :
  11. '    * http://foro.h-sec.org
  12. '    * http://infrangelux.sytes.net
  13. '===========================================================================
  14.  
  15. Public Function getSharedSubFolders(ByVal sServer As String) As Collection
  16. Dim oShell                  As Object
  17. Dim oItem                   As Variant
  18.  
  19.    If PathIsNetworkPath(sServer) Then
  20.       Set oShell = CreateObject("Shell.Application")
  21.  
  22.       If Not oShell.NameSpace(CVar(sServer)) Is Nothing Then
  23.          Set getSharedSubFolders = New Collection
  24.  
  25.          For Each oItem In oShell.NameSpace(CVar(sServer)).Items
  26.              getSharedSubFolders.Add oItem.Path
  27.          Next oItem
  28.       End If
  29.    End If
  30. End Function
  31.  

Ejemplo de uso:
Código
  1. Private Sub Form_Load()
  2. Dim vFolder                 As Variant
  3. Dim cTmp                    As Collection
  4.  
  5.    Set cTmp = getSharedSubFolders("\\CARLOS-PC")
  6.    If cTmp Is Nothing Then
  7.        MsgBox "El servidor local no existe"
  8.    Else
  9.        For Each vFolder In cTmp
  10.            Debug.Print vFolder
  11.        Next
  12.    End If
  13. End Sub



OPCIÓN 2:

Código
  1. Option Explicit
  2. '===========================================================================
  3. ' º Name        : mGetSharedSubFolders.bas
  4. ' º Author      : Psyke1
  5. ' º Mail        : vbpsyke1@mixmail.com
  6. ' º Explanation : Returns an array with the subfolders of a shared folder.
  7. ' º Date        : 26/11/12
  8. ' º Visit       :
  9. '    * http://foro.h-sec.org
  10. '    * http://infrangelux.sytes.net
  11. '===========================================================================
  12.  
  13. 'Type
  14. Private Type NETRESOURCE
  15.  dwScope       As Long
  16.  dwType        As Long
  17.  dwDisplayType As Long
  18.  dwUsage       As Long
  19.  lpLocalName   As Long
  20.  lpRemoteName  As Long
  21.  lpComment     As Long
  22.  lpProvider    As Long
  23. End Type
  24.  
  25. 'kernel32.dll
  26. Private Declare Function lstrlenA Lib "kernel32.dll" (ByVal pString As Long) As Long
  27. Private Declare Function lstrcpyA Lib "kernel32.dll" (ByVal lpString1 As String, ByVal pString As Long) As Long
  28.  
  29. 'mpr.dll
  30. Private Declare Function WNetOpenEnum Lib "mpr.dll" Alias "WNetOpenEnumA" (ByVal dwScope As Long, ByVal dwType As Long, ByVal dwUsage As Long, lpNetResource As NETRESOURCE, lphEnum As Long) As Long
  31. Private Declare Function WNetCloseEnum Lib "mpr.dll" (ByVal hEnum As Long) As Long
  32. Private Declare Function WNetEnumResource Lib "mpr.dll" Alias "WNetEnumResourceA" (ByVal hEnum As Long, lpcCount As Long, lpBuffer As NETRESOURCE, lpBufferSize As Long) As Long
  33.  
  34. 'shlwapi.dll
  35. Private Declare Function PathIsNetworkPath Lib "shlwapi.dll" Alias "PathIsNetworkPathA" (ByVal pszPath As String) As Long
  36.  
  37. 'Consts
  38. Private Const RESOURCE_GLOBALNET        As Long = &H2
  39. Private Const RESOURCETYPE_DISK         As Long = &H1
  40. Private Const MAX_RESOURCES             As Long = &H100
  41.  
  42. 'Function
  43. Public Function getShareSubFolders(ByVal sNameServer As String) As String()
  44. Dim hEnum                               As Long
  45. Dim lLen                                As Long
  46. Dim lTotal                              As Long
  47. Dim lpRName                             As Long
  48. Dim sRet()                              As String
  49. Dim tNet(0 To MAX_RESOURCES)            As NETRESOURCE
  50.  
  51.    If PathIsNetworkPath(sNameServer) Then
  52.        lTotal = -1
  53.        lLen = &H1000 '(UBound(tNet) * Len(tNet(0))) / 2
  54.  
  55.        tNet(0).lpRemoteName = StrPtr(StrConv(sNameServer, vbFromUnicode))
  56.  
  57.        If Not WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, 0, tNet(0), hEnum) Then
  58.            If Not WNetEnumResource(hEnum, lTotal, tNet(0), lLen) Then
  59.                If lTotal > 0 Then
  60.                    lTotal = lTotal - 1
  61.                    ReDim sRet(0 To lTotal) As String
  62.  
  63.                    For lLen = 0 To lTotal
  64.                        lpRName = tNet(lLen).lpRemoteName
  65.  
  66.                        sRet(lLen) = Space(lstrlenA(lpRName))
  67.                        lstrcpyA sRet(lLen), lpRName
  68.                    Next lLen
  69.                End If
  70.            End If
  71.  
  72.            WNetCloseEnum hEnum
  73.        End If
  74.    End If
  75.  
  76.    getShareSubFolders = sRet()
  77. End Function

Ejemplo de uso:
Código
  1. Private Sub Form_Load()
  2. Dim vSubFolder                          As Variant
  3. Dim sSF()                               As String
  4.  
  5.    sSF = getShareSubFolders("\\CARLOS-PC")
  6.  
  7.    If Not Not sSF Then
  8.  
  9.        For Each vSubFolder In sSF
  10.            Debug.Print vSubFolder
  11.        Next vSubFolder
  12.    End If
  13.  
  14.    'fix NotNot hack :)
  15.    Debug.Assert App.hInstance
  16. End Sub

DoEvents! :P
18  Foros Generales / Sugerencias y dudas sobre el Foro / Añadir numeración de líneas a GeSHi en: 26 Noviembre 2012, 13:14 pm
Pues eso... me es muy cómodo a la hora de buscar una sección concreta en un código.
¿Qué opináis?

DoEvents! :P
19  Programación / Programación Visual Basic / Enumerar carpetas de una carpeta compartida en: 26 Noviembre 2012, 10:36 am
Me estoy volviendo loco... :huh:
Necesito extraer todas las carpetas que contenga la carpeta compartida "\\micarpeta\".
Tan sólo para saber si existe ya he tenido problemas puesto que devuelve false utilizando métodos tradicionales. Eso lo he solucionado con api PathIsNetworkPath().

En cambio puedo listar las carpetas de una subcarpeta suya:
Código
  1. Private Sub Form_Load()
  2.    Dim f As Object, s
  3.  
  4.    Set f = CreateObject("Scripting.FileSystemObject")
  5.  
  6.    For Each s In f.GetFolder("\\micarpeta\hola").SubFolders
  7.        MsgBox s
  8.    Next
  9. End Sub

He encontrado los apis WNetEnumResource(), WNetOpenEnum(), WNetCloseEnum(), WNetOpenEnum().
Código:
http://allapi.mentalis.org/apilist/2AA74BB4AC857C52AD4BC7FA9E4DB1B7.html

Pero es extremaaaaaadamente lento... :(
Así que me comprometo a levantar un monumento a quién me sepa guiar/dar una solución. :-*

DoEvents! :P
20  Programación / Programación Visual Basic / Saber si tengo permisos carpeta en: 24 Noviembre 2012, 22:57 pm
Necesito saber si tengo permisos de escritura en una carpeta.
Se me ocurrió solucionarlo creando un archivo y controlando los errores, pero me parece demasiado feo.  :silbar:
¿Alguna idea?

Gracias.

DoEvents! :P
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines