Comment puis-je obtenir le descripteur de fichier à partir de l'ouverture du FICHIER de structure?

La fopen fonction renvoie un pointeur vers une FILE structure, qui doit être considéré comme une quasi-opaque, sans avoir à se préoccuper de son contenu ou la signification.

Sur Windows, le runtime C est un wrapper de l'API Windows, et le fopen fonction s'appuie sur le CreateFile fonction. Le CreateFile fonction renvoie un HANDLE, qui est utilisé par d'autres API de Windows.

Maintenant, j'ai besoin d'utiliser l'API Windows profondément à l'intérieur d'une bibliothèque qui utilise fopen et FILE*. Donc: est-il un moyen pour obtenir la HANDLE de la FILE structure? Comme c'est le compilateur spécifique, je veux dire sur la MSVC la bibliothèque d'exécution.

Je comprends que ce serait moche, non portable hack, et qui pourrait cassé si Microsoft change le format interne de FILE... mais je suis sur un système fermé (c'est à dire sur un Windows CE embedded system) et le refactoring, la bibliothèque devrait être difficile et prend du temps.

  • La grande question, j'ai traité de cette un moi-même il y a 2 ans.
InformationsquelleAutor lornova | 2010-10-21