![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola,
Yo sigo sin ver dónde entra la "caché" esa (claro que tampoco sé de dónde sale). Lo digo en serio, si estoy confundido me lo hacéis saber por favor. Porque si suponemos que existe un disco en la unidad "E" (pongamos por caso) y yo escribo esto:
¿Qué se supone que estoy "preguntando"? ¿Si existe el archivo en la "caché"? No, señor. Estoy preguntando si existe un archivo en la ruta que indico: ¿y no se me va a responder si existe o no existe? ¿Dónde entra ahí la "caché"? Desde la ignorancia acreditada que me caracteriza, espero que me ilumine vuestra sin duda ilustrada ayuda. ![]() |
|
#2
|
||||
|
||||
|
Desde ya les agradezco por su respuesta
La cosa es así: 1) Grabo unos archivos usando un componente de Delphi para grabación en CD/DVD. 2) Cuando termino de grabar deseo realizar una verificación de los archivos grabados. 3) Abro y cierro la tapa de la grabadora, pero el caché de Windows 2000 no se vacía. Cuando trato de leer los archivos de la grabadora para realizar la comparación con los del rígido, los lee del caché y no del CD/DVD en sí. En definitiva necesito vaciar la caché de Windows para esa unidad, pero no se como. El Nero lo hace sin siquiera abrir la tapa.... Saludos cordiales desde Argentina, Tux |
|
#3
|
||||
|
||||
|
Hola,
Yo entiendo que el componente que estés utilizando para grabar en el CD tiene que proporcionarte la posibilidad de lidiar con la caché famosa. Pero, aún sí, sigo sin comprender cómo si yo trato de averiguar si existe un archivo en el CD Windows me va a decir una cosa u otra mirando en la caché... ¿pero no le estoy dando la ruta del archivo que quiero? ¿Entonces a qué se mete la caché por medio? Sigo sin comprenderlo, la verdad. |
|
#4
|
||||
|
||||
|
Hola.
No tengo control si la lectura se realizará desde la caché de lectura del sistema operativo o del mismo CD. Me doy cuenta que se realiza desde la cache porque al leer los archivos del CD recién escrito la luz de la unidad ni se enciende, y la lectura es rapidísima. Eso lo controla el sistema operativo. He probado expulsar el CD y volverlo a insertar, pero Windows se da cuenta que es el mismo CD (por el número de serie) y la lectura la realiza desde la cache de lectura. El componente que estoy usando (MagicBurner) solo controla la parte de grabación, pero no veo que tenga ninguna funcion para vaciar la cache de lectura de unidades removibles. Poder se que se puede, sin ir más lejos Nero lo hace cuando activamos la opción de "verificar los datos escritos". Saludos desde Argentina, Tux ![]() |
|
#5
|
||||
|
||||
|
Hola,
A ver... no sabemos qué hace Nero, ¿verdad? Tú dices que no tienes control sobre si la lectura se realizará desde la caché del sistema operativo o desde el CD, pero, ¿esto cómo es posible? Si eres tú quien implementa la comprobación de los archivos, eres tú el que tiene que codificar lo que sea menester para llevar a cabo la tarea. Ahora bien, tú grabaste los datos en el CD... y hasta aquí la participación de la caché del sistema operativo y del componente MagicBurner. A partir de ahí (en mi ignorante opinión) eres tú quien debe implementar la comprobación de los archivos grabados. Y ya me dirás porqué no puedes hacerlo como quieras... Es decir, si guardas antes de grabar las rutas de los archivos a grabar, por un lado, y luego compruebas que los archivos están donde deben estar en el CD... hágase esto como se tenga que hacer, repito que no sé dónde entra la caché del sistema operativo... Pongamos por caso que grabas el archivo "C:\archivo.bmp" en el CD que se encuentra en la unidad "E". Para comprobar que el archivo se grabó correctamente una posible forma sería obtener el MD5 del archivo "C:\archivo.bmp" y compararlo con el del archivo "E:\archivo.bmp". Evidentemente este último ha de existir: de no ser así ya sabríamos que la grabación no terminó correctamente. Pero tú para comprobar la existencia del archivo "E:\archivo.bmp" utilizarás la función "FileExists" (por simplificar el ejemplo) y le dirás al sistema operativo que te diga si el archivo "E:\archivo.bmp" existe o no existe: no si existe en la caché o no existe en la caché, sino si existe el archivo "E:\archivo.bmp". Así que no sé si me estoy perdiendo algo o qué... |
|
#6
|
||||
|
||||
|
Cita:
El problema es (voy a usar las letras de unidades de tu mensaje) es que cuando leo la unidad E: ,no me lee fisicamente el CD, sino que (al ser pocos datos los que grabo en el CD, 150 Mb como mucho) a los archivos los lee de la memoria (ya que Windows cachea las lecturas en las unidades removibles, y al ser un CD recién grabado, entonces su contenido está "cacheado"). Y al no leer fisicamente el CD, entonces NO puedo verificar si REALMENTE los datos se grabaron correctamente. Gracias por la paciencia... Saludos desde Argentina, Tux ![]() |
|
#7
|
||||
|
||||
|
Hola,
Pues muy bien puedes llevar razón. Aunque yo sigo sin entender cómo es posible que intente averiguar si existe el archivo "E:\archivo.bmp" y el sistema operativo me responda si existe o no "en la caché". No es eso lo que quiero saber: quiero saber si existe el archivo "E:\archivo.bmp". Quiero decir que la caché estará estupenda para otros menesteres, pero, cuando uno no quiere saber si existe un archivo en la caché sino en una ruta en concreto, lo suyo (digo yo... vamos, que lo mismo estoy diciendo estupideces) es que se me respondiera si existe o no el archivo en la ruta que especifico. De hecho si uno mira la ayuda sobre la función "FileExists", por ejemplo, en ningún lado se dice "Si el archivo está en una unidad removible es posible que esta función retorne "True" aunque el archivo no se encuentre en la ruta especificada...". Por ningún lado pone eso, así que ya me diréis qué pensáis sobre esto... |
|
#8
|
||||
|
||||
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Como pasar datos de una hoja de Excel a Bases de Datos de Paradox | Goyo | OOP | 1 | 06-02-2007 01:57:20 |
| Añadir datos desde una base de datos a un TListBox | proyecto | Conexión con bases de datos | 1 | 21-11-2006 07:01:19 |
| Guardar en 1 base de datos SQL, datos procedentes de 2 tablas distintas | adaypr | C++ Builder | 1 | 05-09-2006 11:56:33 |
| Verificación de dni | luna | Varios | 4 | 29-05-2004 21:33:46 |
| Reto Para Expertos En Base De Datos Y Tipos De Datos.... (blob) | frankmch | Conexión con bases de datos | 2 | 08-09-2003 19:44:52 |
|