Win32 APIを使用できるようにしたいのですが、最近、user32.dll
からの関数を必要とする多くのタスクを実行する必要があるため、学習しようとしてGoogleを使っていますが、ことは:そこにあるすべてのチュートリアルはそれについてあり、特定のことを行う方法をあなたに教えるだけです。 Win32 APIを通じてMessageBox
を表示するようなものですが、実際にはWin32フレームワークを学ぶことはできません。
では、実際にどうやってそれを学ぶのですか?どのようにしてすべての機能を知っていますか?マネージライブラリを使用すると、特にIntelliSense、オブジェクトブラウザーなどを提供するVisual Studioを使用すると非常に簡単ですが、Win32 APIは非常に厄介です(少なくともC#開発者の観点から)。
これまで使用してきた方法は、Googleでタスクを検索して、Win32 APIで実行できることを確認して(私にはわからなかった)、関数をコピーして使用するだけです(それは私にとって恐ろしいことです)。私は多くの「力」を失っていると感じています)。
それで、どうやってそれを学ぶことができますか?
明確にするために:私は本に興味がありません。残念なことに、プロジェクトにこの知識が必要であり、本に投資する時間がありません。でも答えは出ました。
皆さん、ありがとうございました。
MSDNからWinAPIリストを見つけることができます。以下は、Windowsアプリケーションプログラミングインターフェイス(API)のリファレンスコンテンツのリストです。 http://msdn.Microsoft.com/en-us/library/ff818516(v = vs.85).aspx
Visual Basic Win API関数を介していくつかのことを学ぶことができます。例は非常に簡単に理解できます。次に、コードをC#に変換できます。
55カテゴリに598 Visual Basic Windows API関数があります http://www.ex-designz.net/api.asp
まず、Win32はサブシステムのセットです。あなたはおそらくそれらすべてを簡単に学ぶことはできません。優先順位を付けるだけです。
しかし、あなたが学びたいことを言えるようにするには、おそらく全体像が必要です。 Win32にアプローチする最善の方法は、Charles Petzoldによる "Programming Windows"を使用することだと思います。読みやすく、理解しやすいです。自分でピックアップして実験できる例はたくさんあります。
基本的なことを学んだ後は、Mark Russinovichの「Microsoft Windows Internals」をお勧めします。かなり高度ですが、Windowsコアの内部を理解することができます。
P/Invoke を使用してC#でWin32 DLLを呼び出すことから始めるべきだと個人的に感じています
これにより、c#でpinvokeを使用してWINAPIについて知る必要がある基本的な知識のほとんどが得られます。また、MSDNが提供するWINAPI関数のオフラインバージョンも持っていましたが、どこからダウンロードしたのか思い出せません。
最後に、基本的な簡単に理解できるWINAPIコードを入手してください。これには http://mwinapi.sourceforge.net/ があります。
EDIT:ドキュメントの オフラインバージョンは、phatocde からダウンロードできます。
Win32 API-ヘルプドキュメントとサンプルは、Windows SDKダウンロードに含まれている必要があります。 http://www.Microsoft.com/download/en/details.aspx?id=8279
theForgerのWin32 APIプログラミングチュートリアル もご覧ください。
win32 APIでの開発を可能な限り迅速かつ明確に開始しようとします。