質問

沢山あります Win32 API kernel32やshell32のような呼び出し / shell32は、電話をかけるのに役立つ可能性があります C#. 。それらを使用する一般的な方法は、 pinvoke.net ウェブサイト、およびそこからのdllimport定義を使用します。

このプロセスは、使用するすべての方法に必要です。

共通 /ほとんどを含むアセンブリはありますか? [DllImport]ED API関数?

C#(参照として)から直接使用できるものを探しているので、あらゆる種類のdllimportステートメントを自分で収集して組み合わせる必要はありません(エラーのリスクがあります)。

役に立ちましたか?

解決

私が知っていることは、.NET用のWindows APIをラッピングするコードの広く知られているバンドルはありません。特定の状況では有用であることがわかりましたが、ほとんどの場合、ネイティブWindows APIの多くを使用する必要がある場合は、.NETフレームワークを適切に利用しているかどうか、または理由を自問する必要があります。 .NETを使用しますか?

上記の意見に関係なく、次の定義のかなり包括的なソースを見つけることができます http://pinvoke.net/.

他のヒント

あなたは見つけるべきです Pinvoke.netで あなたが探しているもの。実際には、単純なDLLインポート条項よりも、C#ソースコードに出荷できる「舞台裏」はこれ以上ありません。

それはそれが機能する方法ではなく、C#コードで[dllimport]宣言のみを提供します。 Pinvoke.netまたはP/Invoke Interopアシスタントのようなツールでそれらを見つける方法。 API関数を実際に使用する方法を見つけるには、CまたはC ++コードを調査する必要があります。一般的に、Windows APIがどのように機能するかを理解します。

それを始めるのに最適な場所は、ペトゾルドの独創的な本「プログラミングウィンドウ」です。 Windows SDKドキュメントとSDKのフルバージョンに含まれる多くのサンプルで、C/C ++でソースコードサンプルを見つけることができます。そして、もちろん、機能名を検索するだけです。やや皮肉なことに、マネージド言語で記述されている最近のウェブ上にあるサンプルの数は、C/C ++サンプルの数値を超え始めます。また、VB6宣言(キーワードを宣言)に注意してください。また、広く利用可能であるため、そのタイプは.NETと互換性がありません。

Codeplex.comやCodeProject.comなどのサイトは、ネイティブAPI呼び出しの周りにマネージドクラスのラッパーを持つライブラリを見つけるのに適した場所です。通常、ライブラリを使用するだけです。

最後になりましたが、stackoverflow.comは優れたリソースです;)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top