¿Alguien sabe de una manera fácil de montar programáticamente un archivo como un "disco" (FAT32) en Windows 7?

StackOverflow https://stackoverflow.com/questions/5337067

Pregunta

Tengo una prueba automatizada (usando CUNIT) que requiere un archivo de "imagen de disco" (copia en bruto de un disco) para ser "montado" en Windows y explorarse. Anteriormente he usado una herramienta/biblioteca llamada "Filedisk-17" , pero esto no parece funcionar en mi Windows 7 (64 bits).

ActualizarDebo señalar que cambiar el formato de imagen (para decir VHD) no está en la opción.

¿Alguna sugerencia en cuanto a otras herramientas o bibliotecas (quizás mejor compatibles) para lanzar el archivo? El proyecto está codificado en Ansi C y se compila usando MingW.

¡Saludos!

Søren

¿Fue útil?

Solución

Editar: Buscando Bing para +filedisk 64 Aprovecha una construcción de 64 bits de FileDisk, la utilidad a la que se refiere:

http://www.winimage.com/misc/filedisk64.htm

Y FileDisk-15 firmado para 64 bits aquí:

http://www.acc.umu.se/~bosse/

No puedo responder por ello, ya que nunca lo he usado y no estoy familiarizado con el autor.

Alternativamente:

Si tiene un VHD, puede montarlo en Windows fácilmente:

http://technet.microsoft.com/en-us/library/cc708295(wss.10).aspx

Ver también:

http://www.petri.co.il/mounting-vhd-files-with-vhdmount.htm

Como tiene una imagen DD en bruto, no es un VHD, primero deberá convertirla:

http://www.bebits.com/app/4554

O qemu-img.exe también puede hacer esto:

qemu-img.exe convert -f raw rawdisk.img -O vpc rawdisk.vhd

Alternativamente, puede crear un VHD vacío y usar DD para copiar la imagen sin procesar al VHD, abriendo el VHD como un dispositivo RAW.

Otros consejos

Me enfrenté a este problema recientemente y encontré Imdisk Para ser una solución extremadamente buena:

  • GRATIS, con fuente disponible y una licencia de código abierto muy flexible
  • Configuración trivial (he visto Filedisk64 (en la respuesta aceptada) descrita como tener una configuración "técnica")
  • GUI sencillo y acceso de línea de comandos
  • Trabajó en Windows 7 de 64 bits
  • Parece montar felizmente cualquier tipo de sistema de archivos reconocido por Windows (en mi caso, FAT16)
  • Funciona con archivos que contienen
    • Particiones crudas
    • Discos crudos enteros (es decir, incluyendo el MBR y una o más particiones; qué partición se puede seleccionar)
    • Archivos VHD (¡que resulta que son solo particiones o discos sin procesar con un pie de página de 512 bytes adjunto!)
  • También puede crear unidades de RAM, ya sea inicialmente vacía o basada en una imagen de disco existente. (¡Muy bien, debo decir!)

Encontré problemas menores tratando de desmontar los unidades. No pude desmontar una unidad desde el menú contextual de la GUI en el clic derecho, ya que la unidad parecía estar "en uso" por el proceso Explorer.exe. Cerrar la ventana del explorador y usar imdisk -d -m X: tampoco funcionó; sin embargo imdisk -D -m X: (-D "Fuerzas" un desmontaje, lo que sea que eso signifique) hizo. Esto funcionó incluso si la unidad era visible en una ventana de Explorer abierta, sin parecer para crear ningún problema. Sin embargo, incluso después de que el disco parecía tener completamente desmontado, un imdisk -l Para enumerar todos los dispositivos disponibles aún informar que \Device\ImDisk0 existe, y si vuelves a montar la unidad más tarde, tanto y \Device\ImDisk1 aparecerá en la salida de imdisk -l (y así sucesivamente con más ciclos de desmontaje/remontación). Esto no creó ningún problema con el uso de la unidad montada cuando probé algunos ciclos desmontados/rematados, aunque teóricamente podría si realiza esto muchas veces entre los reinicios.

Imdisk fue invaluable para transferir el contenido de una unidad de disco de 1.5 GB con una partición DOS FAT16 de una antigua máquina 486.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top