Función SetTapePosition (winbase.h)
La función SetTapePosition establece la posición de cinta en el dispositivo especificado.
Sintaxis
DWORD SetTapePosition(
[in] HANDLE hDevice,
[in] DWORD dwPositionMethod,
[in] DWORD dwPartition,
[in] DWORD dwOffsetLow,
[in] DWORD dwOffsetHigh,
[in] BOOL bImmediate
);
Parámetros
[in] hDevice
Controla el dispositivo en el que se va a establecer la posición de la cinta. Este identificador se crea mediante la función CreateFile .
[in] dwPositionMethod
Tipo de posicionamiento que se va a realizar. Este parámetro puede ser uno de los siguientes valores.
[in] dwPartition
Partición en la que se va a colocar. Si dwPartition es cero, se usa la partición actual. Las particiones se numeran lógicamente de 1 a n, donde 1 es la primera partición de la cinta y n es la última.
[in] dwOffsetLow
Bits de orden bajo de la dirección de bloque o recuento de la operación de posición especificada por el parámetro dwPositionMethod .
[in] dwOffsetHigh
Bits de orden superior de la dirección de bloque o recuento de la operación de posición especificada por el parámetro dwPositionMethod . Si no se requieren los bits de orden superior, este parámetro debe ser cero.
[in] bImmediate
Indica si se va a devolver en cuanto comienza la operación de movimiento. Si este parámetro es TRUE, la función devuelve inmediatamente; si es FALSE, la función no devuelve hasta que se haya completado la operación de movimiento.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es NO_ERROR.
Si se produce un error en la función, puede devolver uno de los siguientes códigos de error.
Error | Descripción |
---|---|
|
Error al intentar acceder a los datos antes del marcador inicial de medio. |
|
Se detectó una condición de restablecimiento en el bus. |
|
No se encontró la información de partición cuando se cargaba una cinta. |
|
El marcador de fin de cinta se alcanzó durante una operación. |
|
Se alcanzó una marca de archivo durante una operación. |
|
El tamaño del bloque es incorrecto en una nueva cinta en una partición multivolumen. |
|
La cinta que estaba en la unidad se ha reemplazado o quitado. |
|
Se alcanzó el marcador de fin de datos durante una operación. |
|
No hay ningún medio en la unidad. |
|
El controlador de cinta no admite una función solicitada. |
|
No se pudo crear particiones en la cinta. |
|
Se alcanzó una marca de establecimiento durante una operación. |
|
Error al intentar bloquear el mecanismo de expulsión. |
|
Error al intentar descargar la cinta. |
|
El medio está protegido contra escritura. |
Comentarios
Si el desplazamiento especificado por dwOffsetLow y dwOffsetHigh especifica el número de bloques, marcas de archivo o marcas de establecimiento que se van a mover, un desplazamiento positivo mueve la cinta hacia delante al final del último bloque, marca de archivo o marca de establecimiento. Un desplazamiento negativo mueve la cinta hacia atrás al principio del último bloque, marca de archivo o marca de establecimiento. Si el desplazamiento es cero, la cinta no se mueve.
Para obtener información sobre el estado, las funcionalidades y las capacidades de las unidades de cinta y los medios, llame a la función GetTapeParameters .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winbase.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |