Gestion des fichiers et des répertoires

Exemples de base

Voir ici

Exemples en API Win32

Les fonctions utilisées sont CreateFile(), ReadFile(), WriteFile() et CloseHandle().

Le problème pour le débutant avec l'API Win32 (Pas simplement pour les fichiers) est que les fonctions sont très riches en paramètres et en options. Voir filewin32.c

Extraction du nom de chemin long

L'exemple suivant fonctionne de 9x à XP. On note que l'API GetLongPathName() ne fonctionne qu'à partir de Windows 98 et Windows 2000 (Donc pas sous 95 et NT4).

getlongpathname.c

Extraction du nom de chemin long

Cet exemple utilise simplement GetShortPathName().

shortdir.c

Verrouillage de fichiers avec locking()

C'est la méthode à utiliser si on utilise les fonctions fopen() ou open(). On rappelle que locking() n'existe pas sur tous les Unix.

locking.c

Verrouillage de fichiers avec LockFile()

C'est la méthode à utiliser si on travaille directement avec l'API Win32. Voir aussi LockFileEx() si on souhaite être prévenu (Event, IOCP) lorsqu'un verrouillage d'une zone vient de se libérer (NT/2000/XP seulement).

lockapiwin32.c

Decompression de fichiers

Les fonctions LZOpenFile(), LZCopy(), LZClose() permettent de décompresser un fichier compressé avec l'utilitaire Microsoft compress.exe.

Microsoft ne fournit malheureusement pas d'API pour compresser les fichiers.

lzcopy.c

Valid XHTML 1.0!