Metodos de acceso a archivos

02/06/2005 - 05:33 por [David] | Informe spam
Saludos.
Estoy actualmente desarrollando un sofware en VFP9, el cual puede encriptar
archivos, el algoritmos consiste leer un archivo (con FOPEN() ), y creo otro
archivo donde guardo por ejemplo si hay una "f" la cambio por "g", o sea
FWRITE(encriptado,CHR(ASC(caracter)+1))

pero mi problema es al momento de tratar de leer archivos ejecutables, me
marca un error, que la funcion del argumento es invalido (el valor que
devuele es "ÿ"). Solo me funciona con archivos de texto plano la
encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo? o
¿Necesito accesar de algun modo en especifico los archivos?



Ayuda por favor!!!

De antemano, gracias

Preguntas similare

Leer las respuestas

#1 Alex Feldstein
02/06/2005 - 13:06 | Informe spam
On Wed, 1 Jun 2005 22:33:32 -0500, "[David]"
wrote:


Estoy actualmente desarrollando un sofware en VFP9, el cual puede encriptar
archivos, el algoritmos consiste leer un archivo (con FOPEN() ), y creo otro
archivo donde guardo por ejemplo si hay una "f" la cambio por "g", o sea
FWRITE(encriptado,CHR(ASC(caracter)+1))

pero mi problema es al momento de tratar de leer archivos ejecutables, me
marca un error, que la funcion del argumento es invalido (el valor que
devuele es "ÿ"). Solo me funciona con archivos de texto plano la
encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo? o
¿Necesito accesar de algun modo en especifico los archivos?



Eso que usas no es criptografia ino una simple tergiversacion de
caracteres, muy fail de romper. Lo que te sucede es que en un punto
estas excediendo el valor limite de las funciones ASC() CHR()

En lugar de ello porque no usas una funcion de tergiversacion mas
robusta (las hay por miles en internet) o mejor aun usa criptografia
profesional.

Tienes ya acceso gratis y relativamente simple al Windows CryptoAPI y
ejemplos de uso del algoritmo TripleDES en _crypt.vcx de como
encriptar/desencriptar campos dentro de una tabla o archivos completos
en tu disco.


Alex Feldstein
________________________________
Microsoft Visual FoxPro MVP
Please respond in the public groups so that everybody
can benefit from the exchange.
Favor de responder en los foros públicos asi todos se benefician.
(address munged with ROT-13)

Blog: http://www.bloglines.com/blog/AlexFeldstein
Website: http://feldstein.net
Respuesta Responder a este mensaje
#2 Heberto Villavicencio
02/06/2005 - 15:12 | Informe spam
Creo que el problema que te pasa es que la funcion chr() esta recibiendo un
parametro mayor de 255, es decir, cuando el valor ASC de caracter es igual a
255 (cosa que te sucedera frecuentemente en un ejecutable y no tanto en un
txt) al sumarle 1 se convierte en 256, por lo tanto la funcion CHR recibe un
parametro incorrecto. De todas formas si requieres de cierto grado de
seguridad seria recomendable que hicieras lo que te sugiere Alex

"[David]" escribió en el mensaje
news:
Saludos.
Estoy actualmente desarrollando un sofware en VFP9, el cual puede
encriptar archivos, el algoritmos consiste leer un archivo (con FOPEN() ),
y creo otro archivo donde guardo por ejemplo si hay una "f" la cambio por
"g", o sea
FWRITE(encriptado,CHR(ASC(caracter)+1))

pero mi problema es al momento de tratar de leer archivos ejecutables, me
marca un error, que la funcion del argumento es invalido (el valor que
devuele es "ÿ"). Solo me funciona con archivos de texto plano la
encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo? o
¿Necesito accesar de algun modo en especifico los archivos?



Ayuda por favor!!!

De antemano, gracias


Respuesta Responder a este mensaje
#3 [David]
02/06/2005 - 21:48 | Informe spam
Gracias de antemano, yo no sabia el termino verdadero de lo que hago, bueno
ya hice lo que me comentaban, del chr (256), ya no me marca ese error, pero
al tergiversar, queda una copia exacta del programa (EXE), pero al momento
de ejecutarlo, no funciona, al igual con documentos de Word, etc. ¿Que
solucion me recomiendan, AYUDA!!!?
GrAcIaS

"[David]" escribió en el mensaje
news:
Saludos.
Estoy actualmente desarrollando un sofware en VFP9, el cual puede
encriptar archivos, el algoritmos consiste leer un archivo (con FOPEN() ),
y creo otro archivo donde guardo por ejemplo si hay una "f" la cambio por
"g", o sea
FWRITE(encriptado,CHR(ASC(caracter)+1))

pero mi problema es al momento de tratar de leer archivos ejecutables, me
marca un error, que la funcion del argumento es invalido (el valor que
devuele es "ÿ"). Solo me funciona con archivos de texto plano la
encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo? o
¿Necesito accesar de algun modo en especifico los archivos?



Ayuda por favor!!!

De antemano, gracias


Respuesta Responder a este mensaje
#4 Germán Giraldo
02/06/2005 - 23:03 | Informe spam
Qué puedes hacer? pues regresar los archivos a su estado original, y no es
broma, hablo en serio. Si lo que deseas es sólo tergiversar algunas partes y
que sigan funcionando, no creo que en los foros de VFP te podamos ayudar.
Para eso necestarías conocer la estructura exacta de cada archivo que deseas
tergiversar, sea .exe, .doc, .xls, etc. y no creo que por aquí haya alguien
que te pueda dar ese tipo de ayuda.

Ahora bien, si comentas cuál es el objetivo de lo que deseas hacer, tal vez
alguien pueda sugerirte alternativas para hacerlo.

Saludos

Germán Giraldo



"[David]" escribió en el mensaje
news:#
Gracias de antemano, yo no sabia el termino verdadero de lo que hago,


bueno
ya hice lo que me comentaban, del chr (256), ya no me marca ese error,


pero
al tergiversar, queda una copia exacta del programa (EXE), pero al momento
de ejecutarlo, no funciona, al igual con documentos de Word, etc. ¿Que
solucion me recomiendan, AYUDA!!!?
GrAcIaS

"[David]" escribió en el mensaje
news:
> Saludos.
> Estoy actualmente desarrollando un sofware en VFP9, el cual puede
> encriptar archivos, el algoritmos consiste leer un archivo (con


FOPEN() ),
> y creo otro archivo donde guardo por ejemplo si hay una "f" la cambio


por
> "g", o sea
> FWRITE(encriptado,CHR(ASC(caracter)+1))
>
> pero mi problema es al momento de tratar de leer archivos ejecutables,


me
> marca un error, que la funcion del argumento es invalido (el valor que
> devuele es "ÿ"). Solo me funciona con archivos de texto plano la
> encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo?


o
> ¿Necesito accesar de algun modo en especifico los archivos?
>
>
>
> Ayuda por favor!!!
>
> De antemano, gracias
>
>


Respuesta Responder a este mensaje
#5 Heberto Villavicencio
03/06/2005 - 16:13 | Informe spam
Bueno exactamente no conozco el proposito de lo que deseas hacer, pero si
cuando regresas el archivo a su estado original no funciona debe ser que
algo no esta volviendo a su estado original, tendrias que revisar las
rutinas que utilizas para tergiversar, estas seguro que cuando regresas al
original la copia te queda exactamente igual al original, y no me refiero al
tamaño del archivo si no a una comparacion byte por byte. Por otro lado si
lo que quieres es que el archivo quede inutilizable por el sistema, se me
ocurre por ejemplo que le añadas ciertos bytes a la cabecera del archivo y
asi no te lo reconocera el sistema, pero si lo que buscas es algun tipo de
"encriptacion" entonces ninguno de los dos metodos seria muy seguro que se
diga.

"[David]" escribió en el mensaje
news:%
Gracias de antemano, yo no sabia el termino verdadero de lo que hago,
bueno ya hice lo que me comentaban, del chr (256), ya no me marca ese
error, pero al tergiversar, queda una copia exacta del programa (EXE),
pero al momento de ejecutarlo, no funciona, al igual con documentos de
Word, etc. ¿Que solucion me recomiendan, AYUDA!!!?
GrAcIaS

"[David]" escribió en el mensaje
news:
Saludos.
Estoy actualmente desarrollando un sofware en VFP9, el cual puede
encriptar archivos, el algoritmos consiste leer un archivo (con
FOPEN() ), y creo otro archivo donde guardo por ejemplo si hay una "f" la
cambio por "g", o sea
FWRITE(encriptado,CHR(ASC(caracter)+1))

pero mi problema es al momento de tratar de leer archivos ejecutables, me
marca un error, que la funcion del argumento es invalido (el valor que
devuele es "ÿ"). Solo me funciona con archivos de texto plano la
encriptacion, ¿Necesitare otra forma de leer cualquier tipo de archivo? o
¿Necesito accesar de algun modo en especifico los archivos?



Ayuda por favor!!!

De antemano, gracias






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida