C # - lieux de comptage et la liste hardlink d'un fichier
Question
Je cherche actuellement une solution de C # qui peut lire le nombre de liens physiques d'un fichier et leurs emplacements liens. Je pense le lien de programme shell extension qui peut le faire en allant aux propriétés du fichier et la liste de tous les liens physiques d'un fichier. Je pense qu'il ya une solution pour les codeurs C # qui peut faire la même chose sans chercher à travers le disque complet.
Edit 1:
Y at-il un moyen de tester deux si elles sont les liens en dur le même fichier?
La solution
Pour obtenir le nombre de liens, utilisez GetFileInformationByHandle
et l'accès au NumberOfLinks
membre.
Voici un exemple d'utilisation de l'API dans VB: http://blogs.msdn.com/b/vbteam/archive/2008/09/22/to-compare-two-filenames-lucian-wischik.aspx
Pour trouver les noms de tous les liens, vous devez utiliser FindFirstFileNameW mais il est uniquement disponible à partir de Vista (ou serveur 2k8), et je ne peux pas trouver de l'information P / Invoke pour elle.