Question

Il y a beaucoup de Win32 de l'API appels / bibliothèques comme kernel32 ou shell32 qui peuvent être à l'appel de USEFULL C # . Une méthode commune de les utiliser est à la recherche de la définition de la méthode sur le pinvoke.net site et en utilisant la définition de dllimport à partir de là.

Ce processus est nécessaire pour chaque méthode que vous souhaitez utiliser.

Y at-il des ensembles availble qui contiennent des fonctions API communes / les plus [DllImport]ed?

Je cherche quelque chose que je peux utiliser directement à partir de C # (comme référence), donc je n'ai pas de rassembler et de combiner toutes sortes de déclarations DllImport moi-même (avec le risque d'erreurs).

Était-ce utile?

La solution

Que je sache, il n'y a pas très connu paquet d'emballage le code de l'API Windows pour .NET; Je pouvais le voir être utile dans certaines circonstances, cependant, dans la plupart des cas, si vous avez besoin d'utiliser une grande partie de l'API Windows native, vous devriez peut-être vous demander si oui ou non vous en utilisant le framework .NET correctement et / ou pourquoi utiliser .NET du tout?

Quelle que soit l'opinion ci-dessus, vous pouvez trouver une source assez complète des définitions http://pinvoke.net/.

Autres conseils

Vous devriez trouver ici à pinvoke.net ce que vous recherchez. Il y a en fait rien de plus « dans les coulisses » qui pourrait être livré en code C # source que les clauses d'importation de DLL de simples plaine.

Ce Offrons pas la façon dont cela fonctionne, vous ne la déclaration [DllImport] dans votre code C #. Juste la façon dont vous souhaitez les trouver sur pinvoke.net ou un outil comme le P / Invoke Interop adjoint. Savoir comment utiliser réellement la fonction API nécessite d'étudier le code C ou C. Et dans la compréhension générale comment fonctionne l'API Windows.

Le meilleur endroit pour commencer avec ce livre est fondateur de Petzold « Windows Programmation ». Vous pouvez trouver des exemples de code source en C / C ++ dans la documentation de Windows SDK et les nombreux échantillons qui sont inclus avec la version complète du SDK. Et le web bien sûr, tout en recherchant le nom de la fonction. Ironie du sort, le nombre d'échantillons que vous pouvez trouver sur le web ces jours qui sont écrits dans un début de langue réussi à l'extérieur nombre des échantillons C / C ++. Méfiez-vous des déclarations VB6 (mot-clé Declare), largement disponibles, les types ne sont pas compatibles avec .NET.

des sites tels que codeplex.com et codeproject.com sont un bon endroit pour trouver les bibliothèques avec des enveloppes de classe gérés dans les appels d'API natives. Vous utilisez normalement simplement la bibliothèque.

Last but not least, stackoverflow.com est une excellente ressource;)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top