Webブラウザを含む小さなアプリケーションがあります。このWebブラウザでは、WebページにJAVAアプレットがロードされます。このJavaアプレットには、画像に示されているような入力プロンプトがあります
この入力ダイアログ内にvb.netボタンを介してテキストを入力できる必要があります。しかし、プログラムでこの入力に焦点を合わせることができません。
助けていただければ幸いです。
フックを使用してそれを行ういくつかの方法があります。1つ目は、SetWindowsHookExを使用してローカルフックを作成することです。
SetWindowsHookEx(WH_CALLWNDPROCRET, NativeMethods.HookProc,
IntPtr.Zero, (uint)AppDomain.GetCurrentThreadId());
WM_INITDIALOG Windowsメッセージを聞いてから、入力テキストボックスを見つけて必要なテキストを挿入します。ホストされたWebブラウザ制御ダイアログの抑制のサンプルコード
2番目の方法は、SetWinEventHook関数を使用してEVENT_SYSTEM_DIALOGSTARTイベントをフックすることであり、残りの処理は同じです。サンプルコードはhttps://github.com/jsulak/Switcheroo/blob/master/ManagedWinapi/AccessibleObjectListener.csにあります。