呼び出したウィンドウのウィンドウハンドルを取得します。
質問
私のC#のDLL内のメソッドを呼び出すソフトウェアがあります。このDLLの方法で私は私のdllを呼び出したプログラム/ウィンドウのウィンドウハンドルを持っている必要があります。
この "呼び出してウィンドウハンドル" を取得する方法?
ありがとうございます。
解決
このメインウィンドウハンドルを返すことができます。
System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle
私が知っているように、それはFormオブジェクトよりも多くませんので、具体的なウィンドウを取得する方法はありません。
しかし、Formクラスは、プロパティHandle
を持っています。あなたはDLLのメソッド呼び出しの引数として渡すことができます。
他のヒント
あなたがすることはできません:Windowsはメソッドを呼び出すことはありません、コードがメソッドを呼び出します。
。あなたは、理想的には、あなたの方法にウィンドウハンドルパラメータを追加する必要があります。それは絶対に不可能だ場合は、現在のスレッドのアクティブウィンドウを取得するには、たとえば、GetActiveWindow
API関数を使用することができます。これは、動作が保証されていません。多分何のウィンドウが開いてありません。
あなたはのウィンドウハンドルを何が必要ですか?
所属していません StackOverflow