Si, es lo que estamos hablando, trabajar con numeros/bits en vez de con cadenas... el codigo que te he puesto trabaja con bits...
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úCita de: Silici0 en 10 Agosto 2010, 12:44 PMNo creo que sea molesto hacer referencia a lo que estas respondiendo... sin duda es molesto ver 200 citas una dentro de otra...
Creo que deberían banear a la gente que hiciera eso continuamente.
Dim a As Integer
Dim b As Integer
a = &H2345
b = a And &HFF
MsgBox Hex$(a)
MsgBox Hex$(b)
Cita de: Silici0 en 10 Agosto 2010, 11:19 AMCreo que si que es necesario citar a quien respondes... si no puede haber confusiones
Yo creo que hacen un bien a la humanidad molestando a los que desconocen que hay un botón de responder y que no hace falta citar absolutamente a todo el mundo que respondas
Cita de: LeandroA en 9 Agosto 2010, 18:20 PMMuchas gracias Leandro
Grosisimo Karcrack , me gustan tus funciones.
Saludos.
MOV EAX, DWORD PTR SS:[ESP+4] ; EAX = &Zombie_STRUCT1.cCurrent
MOV EAX, DWORD PTR DS:[EAX+8] ; EAX = Zombie_STRUCT1.ppS2
PUSH EAX
MOV ECX, DWORD PTR DS:[EAX] ; ECX = &Zombie_STRUCT2.lNull
CALL NEAR DWORD PTR DS:[ECX+4] ; ECX + 4 = Zombie_STRUCT2.lAddr
RET 4
Cita de: Komodo en 9 Agosto 2010, 14:08 PMS1 es la estructura Zombie_STRUCT1
Esta interesante pero este S1 ¿?¿?
Invoke = Zombie_AddRef(S1)
lo demás si que lo he entendido por encima.
http://www.cobein.com/wp/?p=567
'KERNEL32
Private Declare Function CloseHandle Lib "KERNEL32" (ByVal hObject As Long) As Long
Private Declare Function CreateFile Lib "KERNEL32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Const INVALID_HANDLE_VALUE As Long = (-1)
Private Const OPEN_EXISTING As Long = 3
Private Const FILE_FLAG_BACKUP_SEMANTICS As Long = &H2000000
Private Const FILE_SHARE_READ As Long = &H1
Private Const FILE_SHARE_WRITE As Long = &H2
Public Enum AccessType
GENERIC_READ = &H80000000
GENERIC_WRITE = &H40000000
GENERIC_READWRITE = &HC0000000
End Enum
Public Function CheckAccess(ByVal sPath As String, ByVal dwDesiredAccess As AccessType) As Boolean
Dim lRet As Long
lRet = CreateFile(sPath, dwDesiredAccess, FILE_SHARE_READ + FILE_SHARE_WRITE, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0)
CheckAccess = (lRet <> INVALID_HANDLE_VALUE)
Call CloseHandle(lRet)
End Function
Private Sub Form_Load()
Debug.Print CheckAccess("C:\bit.bin", GENERIC_READWRITE), Err.LastDllError
Debug.Print CheckAccess("F:\", GENERIC_READWRITE), Err.LastDllError
Debug.Print CheckAccess("C:\", GENERIC_READWRITE), Err.LastDllError
Debug.Print CheckAccess("F:\", GENERIC_WRITE), Err.LastDllError
Debug.Print CheckAccess("F:\", GENERIC_READ), Err.LastDllError
End Sub