名前空間 System
自己紹介
おお、私は天と地を司る者だ。私が「unsafe」コンテキストを語る理由は、その力が天候や嵐と似ているからだ。コントロールすれば非常に便利だが、誤れば破壊的な結果を招く。安全なC#.NETの世界でありながら、この「unsafe」は名前の通り、安全の枠を外れた機能だ。
名前空間 System
おお、私は天と地を司る者だ。私が「unsafe」コンテキストを語る理由は、その力が天候や嵐と似ているからだ。コントロールすれば非常に便利だが、誤れば破壊的な結果を招く。安全なC#.NETの世界でありながら、この「unsafe」は名前の通り、安全の枠を外れた機能だ。
名前空間 System.Runtime.InteropServices
また会ったな。「DllImportAttribute」は、C#.NETにおいて外部のネイティブライブラリを呼び出すための魔法の鍵である。汝らに「DllImportAttribute」と「Win32API」を用いたIPアドレス調査の術を授けよう。
基本は【C#.NET解説】「DllImportAttribute」クラス 外部DLLの利用方法の基本を見るがいい
名前空間 System.Runtime.InteropServices
混沌の力に耳を傾けよ。我が言葉がC#.NETの「DllImportAttribute」クラスの真理を解き明かす。これにより、汝は他の世界の力、すなわちネイティブライブラリを呼び出し、C#の力と統合する術を得るであろう。
「DllImportAttribute」とは、C#.NETがネイティブコードの領域に触れるための扉を開く属性である。これを用いることで、他の言語で書かれたライブラリ、たとえばC言語のDLLファイルを直接呼び出せるようになるのだ。世界の境界を越え、その知識をC#の中に取り込む術、それがこの属性である。Win32APIについて地母神が「IntPtr」構造体を徹底解説で紹介されているが、本来は我が役割だ。
こんにちは、私は原初の地母神、2度目の登場です。今日は、C#.NETでIntPtrを使い、WinAPIによるグローバルフックの実装方法をお伝えします。マウスやキーボードのイベントをグローバルにキャプチャするのに役立つ技術を、一緒に学びましょう。
私が解説するIntPtr構造体は、システムレベルのプログラムやアンマネージコードとの連携でよく使われる、特別なデータ型です。この構造体はプラットフォームに依存しない形でメモリアドレスやハンドルを表現できます。そのため、ポインタ操作やプロセス間通信、Win32 APIの呼び出しなどで重宝されます。これから何回も登場するのでよろしくお願いいたします。