Fonction RemoveFontResourceExA (wingdi.h)

La fonction RemoveFontResourceEx supprime les polices du fichier spécifié de la table de polices système.

Syntaxe

BOOL RemoveFontResourceExA(
  [in] LPCSTR name,
  [in] DWORD  fl,
  [in] PVOID  pdv
);

Paramètres

[in] name

Pointeur vers une chaîne terminée par null qui nomme un fichier de ressources de police.

[in] fl

Caractéristiques de la police à supprimer du système. Pour que la police soit supprimée, les indicateurs utilisés doivent être les mêmes que lorsque la police a été ajoutée avec la fonction AddFontResourceEx . Pour plus d’informations, consultez la fonction AddFontResourceEx .

[in] pdv

Réservé. Doit être zéro.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Aucune information d’erreur étendue n’est disponible.

Remarques

Cette fonction ne supprime la police que si les indicateurs spécifiés sont les mêmes que lorsque la police a été ajoutée avec la fonction AddFontResourceEx .

Lorsque vous essayez de remplacer un fichier de police existant qui contient une police avec des références en suspens, vous pouvez obtenir une erreur indiquant que la police d’origine ne peut pas être supprimée, car elle est en cours d’utilisation même après avoir appelé RemoveFontResourceEx. Si votre application nécessite le remplacement du fichier de police, pour réduire le nombre de ressources de la police d’origine à zéro, appelez RemoveFontResourceEx dans une boucle, comme indiqué dans cet exemple de code. Si vous continuez à obtenir des erreurs, cela indique que le fichier de police reste chargé dans d’autres sessions. Vérifiez que la police n’est pas répertoriée dans le registre de polices et redémarrez le système pour vous assurer que la police est déchargée de toutes les sessions.

Note Les applications où le fichier de police d’origine est en cours d’utilisation pourront toujours accéder au fichier d’origine et n’utiliseront pas la nouvelle police tant que la police n’est pas rechargé. Appelez AddFontResourceEx pour recharger la police. Nous vous recommandons d’appeler AddFontResourceEx le même nombre de fois que l’appel à RemoveFontResourceEx a réussi, comme indiqué dans cet exemple de code.
 

int i = 0;
while( RemoveFontResourceEx( FontFile, FR_PRIVATE, 0 ) )
{
    i++;
}

// TODO: Replace font file

while( i-- )
{
    AddFontResourceEx( FontFile, FR_PRIVATE, 0 );
}

Notes

L’en-tête wingdi.h définit RemoveFontResourceEx comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wingdi.h (inclure Windows.h)
Bibliothèque Gdi32.lib
DLL Gdi32.dll

Voir aussi

AddFontResourceEx

Fonctions police et texte

Vue d’ensemble des polices et du texte

SendMessage