Autor
|
Tema: Open For Binary (Leído 6,361 veces)
|
NYlOn
Desconectado
Mensajes: 842
OOOOHHHHHH, TARAGÜIIII xDDDDDD
|
hola a todos buen0 mi problema es el siguiente: estoy intentando hacer una especie de 'Edit Server'... para escribir el archivo uso el siguiente Open "C:\Hola.exe" For Binary As #1 Put #1, LOF(1) + 1, Text1.Text Close #1
el problema aparece cuando trato de LEER el archivo ... la verdad no se como hacerlo, buske en el foro y en google pero no encuentro ningun metodo que me de resultad0 :S si alguien sabe como hacerlo estaria muy agradecido de que me lo digiera un salud0 a t02 G0nz4 EDIT: el codigo que estoy tratando de usar para leer es este: Dim var As String Open "C:\Hola.exe" For Binary As #1 Get #1, LOF(1) - 20, var Close #1 Text2.Text = var
|
|
« Última modificación: 18 Septiembre 2005, 20:01 pm por NYlOn »
|
En línea
|
|
|
|
yeikos
Desconectado
Mensajes: 1.424
|
Dim variable as String * 20 variable = Text1.Text Open "C:\Hola.exe" For Binary As #1 Put #1, LOF(1) + 1, variable Close #1
Dim var As String * 20 Open "C:\Hola.exe" For Binary As #2 Get #2, LOF(2) - 21, var Close #2 Text2.Text = var
|
|
« Última modificación: 18 Septiembre 2005, 21:54 pm por YeIk0s »
|
En línea
|
|
|
|
Kizar
Desconectado
Mensajes: 1.325
kizar_net
|
El codigo de yeicos es muy parecido al que iba a poner yo, pero estoy seguro de que tambien funciona bien, y añadir que tal y como esta en el textbox solo se podrian escribir 20 caracteres, si escribes menos quedarian espacios en blanco que no pasa nada. Y otra cosa, si abres el exe con el block de notas veras al final el texto k as escrito, te aconsejo que uses alguna funcion para encriptarlo como por ejemplo. Function Cypher(Str As Variant) As String 'Función que cifra una cadena Dim Temp As String, PwdChr As Integer Dim EncryptKey As Integer EncryptKey = Int(Sqr(Len(Str) * 100)) + 200 For PwdChr = 1 To Len(Str) Temp = Temp + Chr(Asc(Mid(Str, PwdChr, 1)) Xor EncryptKey) Next PwdChr Cypher = Temp End Function
Es muy facil de usar pero tienes que usarla al escribir y al leer los datos por ejemplo: variable = Cypher(Text1.Text)
Text2.Text = Cypher(var)
Esta claro que e modificado el codigo de yeikos Salu2 ejoy it!
|
|
|
En línea
|
|
|
|
NYlOn
Desconectado
Mensajes: 842
OOOOHHHHHH, TARAGÜIIII xDDDDDD
|
Dim variable as String * 20 variable = Text1.Text Open "C:\Hola.exe" For Binary As #1 Put #1, LOF(1) + 1, variable Close #1
Dim var As String * 20 Open "C:\Hola.exe" For Binary As #2 Get #2, LOF(2) - 21, var Close #2 Text2.Text = var
te falto es0 gracias x todo Salu2
|
|
|
En línea
|
|
|
|
NYlOn
Desconectado
Mensajes: 842
OOOOHHHHHH, TARAGÜIIII xDDDDDD
|
che y hay alguna forma de eliminar los espacios restantes del final ?? ya que no se cuantos valores se van a introducir exactamente :S
desde ya muchas gracias
G0nz4
|
|
|
En línea
|
|
|
|
yeikos
Desconectado
Mensajes: 1.424
|
che y hay alguna forma de eliminar los espacios restantes del final ?? ya que no se cuantos valores se van a introducir exactamente :S
desde ya muchas gracias
G0nz4
Trim(variable)
|
|
|
En línea
|
|
|
|
NYlOn
Desconectado
Mensajes: 842
OOOOHHHHHH, TARAGÜIIII xDDDDDD
|
muhisimas gracias x las lineas y x la rapidez a los 2 un salud0 !!! G0nz4
|
|
|
En línea
|
|
|
|
Simbelmynë
|
A ver veamos que yo tambien hace mucho estoy con esto y no termino de entender una cosa que debe ser muy facil visto que todo el mundo la entiende y el unico que no la ve soy yo: Estariamos haciendo un editor, para lo que sea, al cual hay que agregarle datos en el final de el archivo: Dim variable as String * 20 variable = Text1.Text Open "C:\Hola.exe" For Binary As #1 Put #1, LOF(1) + 1, variable Close #1
Hasta ahi perfecto, nuestro editor abre el archivo a editar, le agrega la informacion necesaria al final del archivo y lo cierra, perfecto, ya tenemos la informacion que necesitabamos dentro de el archivo editado... Ahora: Dim var As String * 20 Open "C:\Hola.exe" For Binary As #2 Get #2, LOF(2) - 21, var Close #2 Text2.Text = var
Este codigo donde iria?? Supongo yo que en archivo ya editado, teniendo en cuenta que mismo trabajara solo y no podra tomar datos de otro archivo, no? Pero de seguir esta logica, a mi no me funciona... En resumidas sintesis: ¿Como hace el archivo editado para utlizar la informacion que se le agrego con el editor, ubicandola donde la necesita? Bueno, solamente eso, agradeceria mucho que alguien me saque de esta incertidumbre... Un saludo y gracias...
|
|
|
En línea
|
|
|
|
Kizar
Desconectado
Mensajes: 1.325
kizar_net
|
en el servidor editado pones en el form_load: Dim var As String * 20 dim var1 as string Dim Str1 As String Dim Str2 As String
Open app.pach & "\" & app.exename For Binary As #2 Get #2, LOF(2) - 20, var Close #2
Str1 = InStr(1, var, " ") Str2 = Left(var, Str1 - 1) text1.text = Str2
|
|
|
En línea
|
|
|
|
NYlOn
Desconectado
Mensajes: 842
OOOOHHHHHH, TARAGÜIIII xDDDDDD
|
falto un detalle: la propiedad "EXEName" te devuelve solo el nombre, no la extensión, x lo que no te abriria el archivo... solo tenes que cambiar este Open app.pach & "\" & app.exename For Binary As #2
por este Open app.pach & "\" & app.exename & ".exe" For Binary As #2
un salud0 G0nz4
|
|
|
En línea
|
|
|
|
|
|