Partager via


PrepareTape, fonction (winbase.h)

La fonction PrepareTape prépare la bande à accéder ou à supprimer.

Syntaxe

DWORD PrepareTape(
  [in] HANDLE hDevice,
  [in] DWORD  dwOperation,
  [in] BOOL   bImmediate
);

Paramètres

[in] hDevice

Gérez l’appareil qui prépare la bande. Ce handle est créé à l’aide de la fonction CreateFile .

[in] dwOperation

Préparation du périphérique à bande. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
TAPE_FORMAT
5L
Effectue un format de bas niveau de la bande. Actuellement, seul l’appareil QIC117 prend en charge cette fonctionnalité.
TAPE_LOAD
0L
Charge la bande et déplace la bande au début.
TAPE_LOCK
3L
Verrouille le mécanisme d’éjection de bande afin que la bande ne soit pas éjectée accidentellement.
TAPE_TENSION
2L
Ajuste la tension en déplaçant la bande à la fin de la bande et au début. Cette option n’est pas prise en charge par tous les appareils. Cette valeur est ignorée si elle n’est pas prise en charge.
TAPE_UNLOAD
1L
Déplace la bande vers le début pour la suppression de l’appareil. Après une opération de déchargement réussie, l’appareil retourne des erreurs aux applications qui tentent d’accéder à la bande, jusqu’à ce que la bande soit à nouveau chargée.
TAPE_UNLOCK
4L
Déverrouille le mécanisme d’éjection de bande.

[in] bImmediate

Si ce paramètre a la valeur TRUE, la fonction retourne immédiatement. Si elle a la valeur FALSE, la fonction ne retourne pas tant que l’opération n’est pas terminée.

Valeur retournée

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, elle peut retourner l’un des codes d’erreur suivants.

Error Description
ERROR_BEGINNING_OF_MEDIA
1102L
Une tentative d’accès aux données avant l’échec du marqueur de début du moyen.
ERROR_BUS_RESET
1111L
Une condition de réinitialisation a été détectée sur le bus.
ERROR_DEVICE_NOT_PARTITIONED
1107L
Les informations de partition sont introuvables lors du chargement d’une bande.
ERROR_END_OF_MEDIA
1100L
Le marqueur de fin de bande a été atteint lors d’une opération.
ERROR_FILEMARK_DETECTED
1101L
Une limite de fichier a été atteinte lors d’une opération.
ERROR_INVALID_BLOCK_LENGTH
1106L
La taille du bloc est incorrecte sur une nouvelle bande dans une partition multivolume.
ERROR_MEDIA_CHANGED
1110L
La bande qui se trouvait dans le lecteur a été remplacée ou supprimée.
ERROR_NO_DATA_DETECTED
1104L
Le marqueur de fin de données a été atteint pendant une opération.
ERROR_NO_MEDIA_IN_DRIVE
1112L
Il n’y a pas de média dans le lecteur.
ERROR_NOT_SUPPORTED
50L
Le pilote de bande ne prend pas en charge une fonction demandée.
ERROR_PARTITION_FAILURE
1105L
Impossible de partitionner la bande.
ERROR_SETMARK_DETECTED
1103L
Une valeur setmark a été atteinte lors d’une opération.
ERROR_UNABLE_TO_LOCK_MEDIA
1108L
Une tentative de verrouillage du mécanisme d’éjection a échoué.
ERROR_UNABLE_TO_UNLOAD_MEDIA
1109L
Une tentative de déchargement de la bande a échoué.
ERROR_WRITE_PROTECT
19L
Le support est protégé en écriture.

Remarques

Certains périphériques à bande ne prennent pas en charge certaines opérations sur bande. Consultez la documentation de votre périphérique à bandes et utilisez la fonction GetTapeParameters pour déterminer les fonctionnalités de votre périphérique à bandes.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête winbase.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

CreateFile

GetTapeParameters