Help and Support
 

powered byLive Search

INFORMACIÓN: Acceso de unidad directa en Win32

Id. de artículo:100027
Última revisión:martes, 06 de mayo de 2003
Versión:2.0

Resumen

Para abrir un disco duro físico para acceso (E/S en bruto) a disco directo en una aplicación basada en Win32, use un nombre de dispositivo del formulario
\\.\PhysicalDriveN
donde es N 0, 1, 2 y etc. representa cada una de las unidades físicas en el sistema.

Para abrir unas unidades lógicas, el acceso directo es del formulario
\\.\X:
donde es X: una letra de partición hard-drive, una unidad de disco o una unidad de CD-ROM.

Más información

Puede abrir un físico o la unidad lógica que utiliza las interfaces de programación de aplicaciones (API) CreateFile() con estos nombres de dispositivo proporcionó que tiene los derechos adecuados de acceso a la unidad (es decir, debe ser un administrador). Debe utilizar indicadores el FILE_SHARE_READ de CreateFile() y el FILE_SHARE_WRITE para obtener acceso a la unidad.

Una vez que se haya abierto la unidad lógica o física, después, puede realizar E/S directo a los datos de toda la unidad. Cuando realiza E/S de disco directo, debe buscar, leer y escribir múltiplos de tamaños de sector del dispositivo y en límites de sector. Llame a DeviceIoControl() que utiliza IOCTL_DISK_GET_DRIVE_GEOMETRY para obtener los bytes por sector, de sectores, de sectores por pista y etc. para poder calcular el tamaño del búfer que necesitará.

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

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
  Microsoft Windows 2000 Standard Edition
   the operating system: Microsoft Windows XP

Volver al principio

Palabras clave: 
kbinfo kbapi kbkernbase kbfileio KB100027 KbMtes kbmt
Traducción automáticaIMPORTANTE: 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. Si ve errores y desea ayudar con este esfuerzo, rellene la encuesta en la parte inferior de este artículo.
Haga clic aquí para ver el artículo original (en inglés): 100027 (http://support.microsoft.com/kb/100027/en-us/)

Volver al principio

Seleccione idioma

 

Other Support Options

  • Need More Help?
    Contact a Support professional by Email, Online or Phone.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.