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 - Krackwar ™

#31
No se si te servira , un code mio para cvambiar el fondo de el escritorio en asm
Código (ASM) [Seleccionar]

include  'win32ax.inc'
.data
imagen db 'C:\Windows\pompas.bmp'  ;Cambiar C:\Windows\pompas.bmp por la ruta de la imagen que quieran
.code
start:
push SPIF_UPDATEINIFILE
push imagen
push 0
push SPI_SETDESKWALLPAPER
call [SystemParametersInfo] ; Cambiamos el fondo por C:\Windows\pompas.bmp
;------------------------
invoke ExitProcess,0 ;Terminamos
.end start


Por si no entiendes el code la api que cambia el fondo es SystemParametersInfo
#32
Esta sección no es dde .net
#33
TU no abias eliminado tu cuenta  :huh:  :xD :xD :xD :xD


Me da miedo que hitori sea mod  :rolleyes: pero aun a si lo apoyo  ;)  ;-)
#34
Categoria de Charmander bailarines ahora!!!!

Por cierto pudieran hacer uns subforo de asm ... seguro estaria mas poblado que el de criptografia  :silbar:
#35
Este codigo lo pase a VB pero el original es un batch lo que hace es ver cuales son las unidades removibles en el registro , y si existen es por que estan conectadas.


Código (VB) [Seleccionar]
Private Declare Function GetDriveType Lib "kernel32.dll" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
'GetUSBDevices4
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, ByRef phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByRef lpData As Any, ByRef lpcbData As Long) As Long
Private Declare Function RegEnumValue Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, ByRef lpcbValueName As Long, ByVal lpReserved As Long, ByRef lpType As Long, ByRef lpData As Byte, ByRef lpcbData As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Const HKEY_LOCAL_MACHINE As Long = &H80000002
Private Const READ_CONTROL As Long = &H20000
Private Const STANDARD_RIGHTS_READ As Long = (READ_CONTROL)
Private Const KEY_QUERY_VALUE As Long = &H1
Private Const KEY_ENUMERATE_SUB_KEYS As Long = &H8
Private Const KEY_NOTIFY As Long = &H10
Private Const SYNCHRONIZE As Long = &H100000
Private Const KEY_READ As Long = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))
Private Const REG_DWORD As Long = 4
Private Const REG_BINARY As Long = 3
Private Const ERROR_SUCCESS As Long = 0&

Public Function GetUSBDevices4() As String()
    Dim lResult             As Long
    Dim lIndex              As Long
    Dim sData               As String
    Dim lData               As Long
    Dim lHandle             As Long
    Dim sTmp()              As String
    Dim dCount              As Double
    Const DRIVE_NO_ROOT_DIR As Long = 1

    'abrimos la clave del registro
    lResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SYSTEM\MountedDevices", 0&, KEY_READ, lHandle)

    Do
        'Redimensionamos el buffer
        sData = String$(2000, Chr$(0))
        'Asignamos el tamaño
        lData = Len(sData)
        'Leemos el valor
        lResult = RegEnumValue(lHandle, lIndex, ByVal sData, lData, 0&, REG_DWORD, ByVal 0&, 0&)
        'Sumamos uno a la posicion...
        lIndex = lIndex + 1
        'Si todo fue correcto
        If lResult = ERROR_SUCCESS Then
            'Recortamos la informacion
            sData = Left$(sData, lData)
            'Si se encuentra: '\??\STORA' (separado por VbNullChar)...
            If InStr(RegQueryStringValue(lHandle, sData), "530054004F00520041") Then
                'Si es una unidad...
                If GetDriveType(Right$(sData, 2) & "\") <> DRIVE_NO_ROOT_DIR Then
                    'Redimensionamos el Array
                    ReDim Preserve sTmp(0 To dCount)
                    'Almacenamos la unidad
                    sTmp(dCount) = Right$(sData, 2) & "\"
                    'Añadimos uno mas a la cuenta
                    dCount = dCount + 1
                End If
            End If
        End If
        'Siempre que no haya habido error...
    Loop While lResult = ERROR_SUCCESS
    'Cerramos el Handle
    RegCloseKey (lHandle)
    'Devolvemos la lista
    GetUSBDevices4 = sTmp
End Function

Function RegQueryStringValue(ByVal hKey As Long, ByVal strValueName As String) As String
    Dim lResult         As Long
    Dim lValueType      As Long
    Dim strBuf          As String
    Dim lDataBufSize    As Long
    Dim strTemp         As String
    Dim i               As Integer

    'Cargamos la Clave
    lResult = RegQueryValueEx(hKey, strValueName, 0, lValueType, ByVal 0, lDataBufSize)
    'Redimensionamos el Buffer
    strBuf = String$(lDataBufSize, Chr$(0))
    'Obtenemos el contenido
    lResult = RegQueryValueEx(hKey, strValueName, 0, 0, ByVal strBuf, lDataBufSize)
    'Si no ha habido errores y la clave es binaria...
    If lResult = ERROR_SUCCESS And lValueType = REG_BINARY Then
        'Por cada caracter del resultado..
        For i = 1 To lDataBufSize
            'Obtenemos el valor Hexadecimal del Ascii del caracter
           strTemp = Hex$(Asc(Mid$(strBuf, i, 1)))
           'Agregamos un 0 si solo hay un numero
           If Len(strTemp) = 1 Then strTemp = "0" & strTemp
           'Lo agregamos...
           RegQueryStringValue = RegQueryStringValue + strTemp
        Next i
    End If
End Function
#36
Cita de: vivachapas en 27 Febrero 2009, 16:21 PM
Cita de: Charmander en 27 Febrero 2009, 04:02 AM
No quieres tambien que te lo compile yo  :huh:  :¬¬

jaja y eso q batee?? acaso lo ayudaste en algo  :-\

CitarAgrega el objeto drive

Ahora si  :¬¬
#37
No quieres tambien que te lo compile yo  :huh:  :¬¬







Agrega el objeto drive
#38
Si justamente esa era muchas gracias  ;D
#39
Si la api existe , una vez la saque debuggeando no me acuerdo que , no no me sirve ninguna de esas funcionas , gracias de todas maneras.
#40
Eso , e estado media hora buscando y no e encontrado la API para saber si un archivo existe o no  :-(

¿Alguien la sabe ?

PD: No me sirven funciones que por error digan si existe o no .