Hola, supongamos que yo tengo 1 archivo y adentro tiene escrito lo siguiente:
Hola.........as.......
...a.s......127......y
..n......a.......y.....
n.......................y
(viendolo desde un Editor Hexadecimal)
¿Como leo yo ese numero 127?
Estuve intentando con EOF, LOF, LOC, SEEK pero nada, no pude. Ya de tranto estudiar otros lengujes se me ha olvidado el vb un poco. :D
ese "127" tiene una posicion, te moves hasta esa posicion en el archivo (SEEK) y luego lees la cantidad de valores q keres.
osea...es algo logico no??
si sabes manejar archivos (y creo q sabes) no creo q te sea mui dificil.
Saludos!!
Private Sub Form_Load()
Dim Server As String
Open "C:\server.exe" For Binary Access Read As #1
Server = Space(Seek(1) + 10)
Get #1, , Server
Close #1
Print Server
End Sub
Eso es lo que tengo..! Pero no entiendo como hacer para llegar justo al 1 de (127)...
Open "C:\server.exe" for binary as #1
Server = Input(LOF(1),1)
Close #1
Resultado = Mid(Server,40,3)
donde puse 40,3 no va 40... tire un numero... pero iria la ubicacino del 1 del 127... 3 es xq 127 tiene 3 caracteres...
bueno la verdad no se si te sirve... xD
pero suerte y SALUDOS
con seek vas hasta la posicion, la tenes q saber, y guardas los datos.
capas te ayude http://msdn2.microsoft.com/es-es/library/7af2feyt(VS.80).aspx
Cita de: vivachapas en 28 Diciembre 2007, 22:03 PM
Open "C:\server.exe" for binary as #1
Server = Input(LOF(1),1)
Close #1
Resultado = Mid(Server,40,3)
donde puse 40,3 no va 40... tire un numero... pero iria la ubicacino del 1 del 127... 3 es xq 127 tiene 3 caracteres...
bueno la verdad no se si te sirve... xD
pero suerte y SALUDOS
Exacto, gracias por recordarme la funcion y aparte codearme un poco :xD
a ver, si podes poner un pedaso del texto tal y como esta... o el mismo archivo para descargarlo seria mas facil...
otra cosa, el numero ese se mueve de posicion?, es siempre el mismo numero?, hasta que sifra puede llegar...
asi es mucho mas facil... pone el texto tal cual esta en tu archivo...
Cita de: vivachapas en 28 Diciembre 2007, 22:03 PM
Open "C:\server.exe" for binary as #1
Server = Input(LOF(1),1)
Close #1
Resultado = Mid(Server,40,3)
donde puse 40,3 no va 40... tire un numero... pero iria la ubicacino del 1 del 127... 3 es xq 127 tiene 3 caracteres...
bueno la verdad no se si te sirve... xD
pero suerte y SALUDOS
El acceso binario no es para eso... la idea es poder leer DATOS BINARIOS.
Dim lOffset As Long
Dim valorByte As Byte
Dim valorLng As Long
Dim sStaticStr As String * 6
Dim btData(5) As Byte
lOffset = 17 ' Offset donde se quiere leer, relativo al principio del archivo.
Open "C:\server.exe" for Binary as #1
Get #1, lOffset, valorByte ' Lee 1 byte en esa posición.
Get #1, lOffset, valorLong ' Lee 4 bytes en esa posición.
Get #1, lOffset, sStaticStr ' Lee 6 bytes y los mete en un String.
Get #1, lOffset, btData ' Lee 6 bytes en un array de bytes.
Debug.Print StrConv(btData, vbUnicode) ' Convierte el array de bytes en String.
Close #1
Bytez.