leer archivo BINARIO

Iniciado por WestOn, 28 Septiembre 2008, 04:27 AM

0 Miembros y 2 Visitantes están viendo este tema.

WestOn

#10
Wenas, he estado buscando como leer y obtener los datos de archivos binarios y he encontrado este post de hendrix:
CitarSacalos a texto plano (si es un exe por ejemplo, va a empezar por MZ...), luego saca los ascii de esas letras y luego al ascii pasalo a binario....aunque no se para que quieres ahcer eso...   No es mas facil (y elegante) en hexadecimal como un buen editor hexadecimal???

Un Saludo.
Mi pregunta es como puedo pasarlo a hexadecimal, y posteriormente (nose como..:S) poder pasarlo a letras normales para cargarlo al text...

PD: No hace falta q me den todo el code, simplemente orientarme hacia q tengo q hacer q ando un poco perdido xD grax de antemano
un saludo ;)
En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            

BlackZeroX

#11
Cita de: WestOn en 28 Septiembre 2008, 16:33 PM
Mi pregunta es como puedo pasarlo a hexadecimal, y posteriormente (nose como..:S) poder pasarlo a letras normales para cargarlo al text...

Código (vb) [Seleccionar]

        Public Function Hex_String(CodigoHex As String) As String
            Dim i As Double
            Dim nBytes As Double
            Dim ddd As String
            nBytes = Len(CodigoHex) \ 2
            Hex_String = String(nBytes, " ")
            For i = 0 To nBytes - 1
                ddd = ddd & Chr$(Val("&H" & Mid$(CodigoHex, i * 2 + 1, 2))) 'Mid$(Hex_String, i + 1, 1) = Chr$(Val("&H" & Mid$(CodigoHex, i * 2 + 1, 2)))
            Next
                Hex_String = ddd
        End Function
' Fin del codigo
' --------------------------------------------------------------------------->
' --------------------------------------------------------------------------->
' --------------------------------------------------------------------------->
' Convierte los bits a Hexadecimal y despues a String
' Por ejemplo: 077 lo combierte a 4D y despues a la letra  M
' Funcion que funciona en conjunto de la funcion de Haxadecimal a string
' Regresa 2 digitos Hexadecimales por bit (8 por byte)
        Public Function Byte_Hex_String(ByVal x) As String
            x = x And &HFF
            If x < 16 Then
                Byte_Hex_String = Hex_String("0" & Hex(x))
            Else
                Byte_Hex_String = Hex_String(Hex(x))
            End If
        End Function

Private Sub Form_Load()
    MsgBox Hex_String("4d")
    MsgBox Byte_Hex_String("77")
End Sub

The Dark Shadow is my passion.

krackwar

Abrelo como byte no como string... y hay te da el archivo en byte's vas transformando los numeros a hexadecimal .

CitarResultado:
MZ
Por cierto nose bien como funciona el VB pero esto debe ocurrir por que despues de "MZ" hay un byte 0 (chr(0)) .
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.

Freeze.

Mira yo hize este ejemplo:
Código (vb) [Seleccionar]
Private Sub Form_Load()
Dim cont() As Byte
Open "C:\Ejecutable.exe" For Binary As #1
    cont = Input(LOF(1), #1)
Close #1
Text1.Text = cont
End Sub.


A mi me funcinó. Es simple ;)

Solo colocale al TextBox (Text1) Multiline en True y Scrollbars en vertical o como a ti te guste ;)

WestOn

#14
Grax a tdos, voy ver si lo consigo y ya os digo  ;)

En el code de ░▒▓BlackZeroҖ▓▒░ me da error nada mas arrancar:
nBytes = Len(CodigoHex) \ 2
"Procedimiento externo no es válido (CodigoHex)"

Freeze tu code me da el mismo resultado:
MZ

un saludo

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            

Freeze.

Pues si :o :O :O :O

No quiero pasar por loco pero hubo un momento en que me lo mostró :xD :xD

WestOn

jejej  :xD, he subido una dll (con un code sencillo), para q si alguien es capaz de obtener lo q ahi dentro nos ponga aqui el code q ha usado  ;D

http://www.megaupload.com/es/?d=FOICFGN7

un saludo  ;)
En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            

seba123neo

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

WestOn

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            

krackwar

CitarFreeze tu code me da el mismo resultado:
MZ

No leiste mi post  :huh:.
Mi blog
Bienvenido krackwar, actualmente tu puntuación es de 38 puntos y tu rango es Veteran.
El pollo número 1, es decir yo, (krackwar), adoro a Shaddy como a un dios.