La ligne OpenFileByID en test() me donne System.AccessViolationException Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Win API NTFS OpenFileByID lancer AccessViolationException
Je suis en train de répliquer this code example (voir la réponse), que je suis en cours d'exécution dans Visual Studio Express 2013 pour Windows Desktop. Mais cet exemple ne semble pas fonctionner pour moi. Il se casse sur la ligne OpenFileByID dans test(). En un mot, j'obtiens l'ID d'un fichier, puis je tente de créer un identificateur de fichier à partir de cet ID. Plus tard, je prévois d'utiliser cette poignée pour obtenir des informations sur le fichier. La raison pour laquelle j'utilise les ID est que je peux réparer les liens rompus, car le GUID d'un fichier cible est beaucoup plus fiable que son emplacement présumé. Aide appréciée! Edit: Le fichier que j'essaie d'ouvrir est un fichier texte ordinaire sur mon bureau, rien de spécial.
Vous semblez avoir négligé de publier du code. –
Le code est dans le lien. J'ai essayé de l'afficher ici mais il se plaignait que le corps était trop grand. – Wes
Obtenez un cas simple qui fonctionne en C++ d'abord, seulement après cela est correct, vous vous souciez d'écrire des déclarations C# pinvoke, obtenez le même cas simple en C# et enfin vous êtes prêt à intégrer un programme plus grand. –