Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: Tyrz en 8 Septiembre 2007, 12:51 PM

Título: Leer archivo .civ
Publicado por: Tyrz en 8 Septiembre 2007, 12:51 PM
Buenas necesito hacer un programa con vb 6 que abra archivos .civ(son de un juego) y editarlos, el problema esque yo los edito con un editor hexadecimal y me gustaria saber como abrir los archivos y leerlos en hexadecimal y guardarlos otra vez como estaban, no pido el codigo solo quiero saber como se haria ya que no tengo ni idea
Saludso y gracias!
Título: Re: Leer archivo .civ
Publicado por: Hendrix en 8 Septiembre 2007, 15:28 PM
para que en hexa??? puedes habrirlo en binario y ya vale.... :-\

Para transformar a hexa tienes el comando hexa()

Un Saludo  :)
Título: Re: Leer archivo .civ
Publicado por: Tyrz en 8 Septiembre 2007, 15:34 PM
ntonc si lo abro en binario y pongo el comando hexa ya me saldra como si lo abriera con un editor hexadecimal? Bueno gracias aver si cojo mi pc y pruebo
Título: Re: Leer archivo .civ
Publicado por: Hendrix en 8 Septiembre 2007, 15:39 PM
Puedes cojer caracter por caracter y sacar su ascii y pasarlo a Hexa, y ya lo tendrias igual  :)

Título: Re: Leer archivo .civ
Publicado por: Tyrz en 8 Septiembre 2007, 19:48 PM
pfff... no me sale esto es lo que llevo echo
Private Sub Command1_Click()
Open Text2.Text For Binary Access Read As #1
read = Input(LOF(1), #1)
Close #1
Text1.Text = read
For x = 1 To Len(Text1.Text)
num = Mid(Text1.Text, 1, x)
Text3.Text = Text3.Text & num
Next
End Sub

text1 = Sale el contenido del archivo
text2 = Ahi pones donde esta el archivo
text3 = Deberia salir el arhivo en hexa
llevo un buen rato probando diferentes cosas y en ninguna he conseguido que me salga! en este ultimo codigo me sale error type mismatch, Alguien sabe como arreglarlo? GRACIAS
Título: Re: Leer archivo .civ
Publicado por: cobein en 8 Septiembre 2007, 20:48 PM

Private Sub Command1_Click()
Open Text2.Text For Binary Access Read As #1
read = Input(LOF(1), #1)
Close #1
Text1.Text = read
For x = 1 To Len(Text1.Text)
num = Mid(Text1.Text, 1, x) <-- aca esta mal
Text3.Text = Text3.Text & num
Next
End Sub


esa linea seria num = hex(asc$(Mid$(Text1.Text, x,1)))


Título: Re: Leer archivo .civ
Publicado por: Tyrz en 9 Septiembre 2007, 09:52 AM
me pone compile error :S
Título: Re: Leer archivo .civ
Publicado por: cobein en 9 Septiembre 2007, 10:20 AM
Donde esta el error? la verdad lo mire ahi en el momento pero acabo de ver otra cosa mas.... postea el codigo que tengas y te digo
Título: Re: Leer archivo .civ
Publicado por: Tyrz en 9 Septiembre 2007, 10:48 AM
esto es todo el codigo
Private Sub Command1_Click()
Open Text2.Text For Binary Access Read As #1
read = Input(LOF(1), #1)
Close #1
Text1.Text = read
For x = 1 To Len(Text1.Text)
num = Hex(Asc$(Mid$(Text1.Text, x, 1)))
Text3.Text = Text3.Text & Hex(Chr(Val(num)))
Next
End Sub

y al intentar abrir un archivo me pne
compile.error:
type-declaration character does not match declared data type
y me marca en amarillo la primera linea, el private sub command 1_click
Saludos y gracias
Título: Re: Leer archivo .civ
Publicado por: cobein en 9 Septiembre 2007, 10:54 AM
ops diculpa me la mande ahi esta

num = hex(chr$(Mid$(Text1.Text, x,1)))
Título: Re: Leer archivo .civ
Publicado por: Tyrz en 9 Septiembre 2007, 11:50 AM
compile errror.. bueno da = dejalo cuando tenga un poco de tiempo me pondre en serio
gracias :)
Título: Re: Leer archivo .civ
Publicado por: cobein en 9 Septiembre 2007, 12:05 PM
Ok, o compila o sigo suicidandome con cigarrillos y cervezas

Private Sub Command1_Click()
    Open Text2.Text For Binary Access Read As #1
    Read = Input(LOF(1), #1)
    Close #1
    Text1.Text = Read
    For x = 1 To Len(Text1.Text)
        num = Hex(Asc(Mid$(Text1.Text, x, 1)))
        Text3.Text = Text3.Text & num
    Next
End Sub
Título: Re: Leer archivo .civ
Publicado por: cobein en 9 Septiembre 2007, 12:08 PM
Ah algo que me olvidaba lo tenes que volver a guarda :D
Título: Re: Leer archivo .civ
Publicado por: Tyrz en 9 Septiembre 2007, 12:54 PM
ala ya esta :D muchas gracias!