INFORMACIÓN: Unidad de Direct Access en Win32

Seleccione idioma Seleccione idioma
Id. de artículo: 100027 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Resumen

Para abrir una unidad de disco duro física para el acceso directo de disco (E/s sin procesar) en una aplicación basada en Win32, utilice un nombre de dispositivo del formulario
\\.\PhysicalDriveN
donde N es 0, 1, 2 y así sucesivamente, que representa cada una de las unidades físicas en el sistema.

Para abrir una unidad lógica, acceso directo es el formulario
\\.\X:
donde X: es una letra de la partición de disco duro, unidad de disco o unidad de CD-ROM.

Más información

Puede abrir físico o mediante la interfaz de programación de aplicaciones (API) de CreateFile() donde estos nombres de dispositivo de unidad lógica siempre que se tengan derechos de acceso adecuados para la unidad (es decir, debe ser un administrador). Debe utilizar indicadores el FILE_SHARE_READ CreateFile() y FILE_SHARE_WRITE para tener acceso a la unidad.

Una vez se ha abierto la unidad física o lógica, a continuación, puede realizar E/s directa a los datos en toda la unidad. Al realizar E/s de disco directa, debe buscar, leer y escribir en múltiplos de tamaños de sector del dispositivo y en los límites del sector. Llame a DeviceIoControl() mediante IOCTL_DISK_GET_DRIVE_GEOMETRY para obtener los bytes por sector, número de sectores, sectores por pista etc., por lo que puede calcular el tamaño del búfer que necesitará.

Tenga en cuenta que una aplicación basada en Win32 no puede abrir un archivo utilizando nombres internos de objeto de Windows NT; por ejemplo, intentar abrir una unidad de CD-ROM abriendo
\Device\CdRom0
no funciona porque no es un nombre de dispositivo válido de Win32. Una aplicación puede utilizar la API QueryDosDevice() para obtener una lista de todos los nombres de dispositivo válidos de Win32 y ver la asignación entre un determinado nombre de dispositivo de Win32 y un nombre de objeto interno de Windows NT. Una aplicación ejecuta en un nivel de privilegios suficientes puede definirse, volver a definir o eliminar asignaciones de dispositivo de Win32 llamando a la API DefineDosDevice().

Propiedades

Id. de artículo: 100027 - Última revisión: martes, 06 de mayo de 2003 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft Win32 Application Programming Interface sobre las siguientes plataformas
    • Microsoft Windows NT Advanced Server 3.1
    • Microsoft Windows NT 4.0
    • Microsoft Windows NT 3.51 Service Pack 5
    • Microsoft Windows NT 4.0
    • the operating system: Microsoft Windows 2000
    • the operating system: Microsoft Windows XP
Palabras clave: 
kbmt kbapi kbfileio kbinfo kbkernbase KB100027 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 100027

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com