Partager via


Fonction WriteTapemark (winbase.h)

La fonction WriteTapemark écrit un nombre spécifié de marques de fichier, setmarks, short filemarks ou long filemarks dans un périphérique à bande. Ces tapemarks divisent une partition de bande en zones plus petites.

Syntaxe

DWORD WriteTapemark(
  [in] HANDLE hDevice,
  [in] DWORD  dwTapemarkType,
  [in] DWORD  dwTapemarkCount,
  [in] BOOL   bImmediate
);

Paramètres

[in] hDevice

Gérez l’appareil sur lequel écrire des tapemarks. Ce handle est créé à l’aide de la fonction CreateFile .

[in] dwTapemarkType

Type de tapemarks à écrire. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
TAPE_FILEMARKS
1L
Écrit le nombre de marques de fichier spécifiées par le paramètre dwTapemarkCount .
TAPE_LONG_FILEMARKS
3L
Écrit le nombre de marques de fichier longues spécifiées par dwTapemarkCount.
TAPE_SETMARKS
0L
Écrit le nombre de setmarks spécifiés par dwTapemarkCount.
TAPE_SHORT_FILEMARKS
2L
Écrit le nombre de marques de fichier courtes spécifiées par dwTapemarkCount.

[in] dwTapemarkCount

Nombre de tapemarks à écrire.

[in] bImmediate

Si ce paramètre a la valeur TRUE, la fonction retourne immédiatement ; si elle est 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.

Erreur Description
ERROR_BEGINNING_OF_MEDIA
1102L
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 marque 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 aucun 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
Un setmark a été atteint pendant 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

Les marques de fichier, setmarks, short filemarks et long filemarks sont des éléments enregistrés spéciaux qui désignent la organization linéaire de la bande. Aucune de ces marques ne contient de données utilisateur. Les marques de fichier sont les marques les plus générales ; setmarks fournit une hiérarchie non disponible avec des marques de fichier.

Une marque de fichier courte contient un espace d’effacement court qui ne peut pas être remplacé, sauf si l’opération d’écriture est effectuée à partir du début de la partition ou d’une marque de fichier longue antérieure.

Une marque de fichier long contient un espace d’effacement long qui permet à une application de positionner la bande au début de la marque de fichier et de remplacer la marque de fichier et l’espace d’effacement.

Configuration requise

Condition requise Valeur
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