問題タブ [beforenavigate2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2068 参照

winapi - Windows 7 は DISPID_BEFORENAVIGATE2 イベントを発生させませんか?

Windows エクスプローラーがローカル ディスクを参照しているときに、DISPID_BEFORENAVIGATE2 イベントをインターセプトすることになっている BHO があります。XP と Vista では問題なく動作しますが、Windows 7 RC では動作しなくなりました。

Windows 7 RC は、ローカル フォルダーが参照されたときに DISPID_BEFORENAVIGATE2 イベントの送信を停止しました。他のイベント (DISPID_DOWNLOADBEGIN など) は BHO に送信されますが、DISPID_BEFORENAVIGATE2 が必要です。

誰でもこれを確認したり、可能な回避策を提供したりできますか?

ありがとう!

0 投票する
2 に答える
1107 参照

c++ - BeforeNavigate2 が URL パラメーターを返さない

Microsoft WebBrowser コントロールを使用してブラウザーを表示する C++ プログラムがあります。URL パラメーターのヒントをコードに渡して、単にブラウザーが新しいページに移動できるようにするのではなく、別のアクションを実行できるようにします。

たとえば、「WRITE.EXE?RUN」という URL を渡して、その URL で実行可能ファイルを実行したいことを示すことができます。

C# では、BeforeNavigate イベントで URL 全体を取得しますが、? までの URL しか取得できません。したがって、C# では「WRITE.EXE?RUN」を取得しますが、C++ では、BeforeNavigate2 に渡される URL は単に「WRITE.EXE」です。

C++ 経由で URL 全体にアクセスする方法についてのアイデアはありますか?

0 投票する
1 に答える
3735 参照

c# - WPFブラウザコントロールを使用しているときに、ieのBeforeNavigate2を上書きするにはどうすればよいですか?

私が理解している限り、WPFのBrwoserコントロールは、つまりActive-Xコントロールのラッパーです。後者にはBeforeNavigate2メソッドがありますが、これはWPFWebBrowserコントロールにはありません。これを回避する方法はありますか?

どうも!マーク

0 投票する
0 に答える
510 参照

c# - C# の axWebBrowser コントロールで FileDownload を自動化する際の問題

私は会社のイントラネット サイトをスクレイピングしようとしているプロジェクトに取り組んでいます。現在、サーバー側でサポートを受けることができないという制約があるためです。axWebBrowser コントロールを使用してページに移動する C# クライアントを作成しています。ページが表示されると、SQL クエリから csv ファイルの動的ダウンロードを作成する .aspx ページを呼び出すボタン コントロールがあります。通常の状態では、これにより FileDownload ダイアログが開き、csv が保存されます。

私は、BeforeNavigate2 イベントを使用して e.uRL をキャプチャし、次に FileDownload イベントを使用してダイアログ ボックスをオーバーライドし、WebClient を使用してファイルを取得する人々の例を見つけました。e.uRL に .aspx スクリプトの URL が含まれており、動的に作成される .csv ファイルが含まれていないことを除いて、この方法は私にとってはうまく機能します。

私が読んだ別の提案は、ファイル パスの HTML 要求からヘッダーを解析することでしたが、それを行ったときに、ヘッダーで 401 Unauthorized Access 例外をスローしました。

最後に、可能であればこれを避けたいので、win32 api 呼び出しを使用し、FindWindow と SendMessage を使用してデフォルトのファイル ダイアログをナビゲートすることを考えましたが、順番に待機するマルチスレッド アプリケーションを作成したくありません。これをする。FileDownload ダイアログ ボックスが開いているときに発生するイベントが見つかりません。開く前または閉じた後に発生するイベントだけです。

あなたが持っているかもしれないアイデアは素晴らしいでしょう.私の説明を明確にするならば、私がこれまでに持っているもののここにコードを貼り付け始めることができます.

0 投票する
1 に答える
1912 参照

vb.net - VB.NET 2010でwebbrowserオブジェクトからPOSTDATAを取得するには?

以前のバージョンの VB では、webbrowser オブジェクトには、webbrowser の postdata へのアクセスを提供する beforenavigate2 イベントがあったことを理解しています。

検索して検索しましたが、Visual Studio 2010 ではイベントが無効になっていると思います。

webbrowser オブジェクトから postdata を取得する方法について何か考えはありますか?

0 投票する
1 に答える
293 参照

webbrowser-control - ユーザーが WebBrowser コントロールで [更新] を選択したかどうかを判断します

Refreshユーザーがコンテキスト メニューから選択したかどうかを検出するにはどうすればよいですか? ユーザーがメソッドを選択しても、NavigateComplete2メソッドは呼び出されません。

さらに重要なことは、独自のカスタム ユーザー エージェントを設定する方法の 1 つは、イベント メソッドをフックするBeforeNavigate2ことであり、ユーザーが [更新] を選択したか、新しい URL をナビゲートしたかを知る必要があります。

任意の洞察をいただければ幸いです。

これは、が選択されNavigateComplete2たときにメソッドが起動されないことを示しています。Refresh

0 投票する
1 に答える
194 参照

memory-management - メモリ内の渡されたパラメーターの文字列を直接変更する

COM イベント メソッドによって渡される関数パラメーターのメモリ値を変更することは可能ですか? COM オブジェクトのプロパティ値を編集する必要があります。

ActiveX コントロールのカスタム ユーザー エージェントを設定しようとしていますが、ユーザーがRefreshリンクされたページを選択または開いた場合、カスタム ヘッダーを使用して読み込みページを再ナビゲートできませんでした。また、メソッドで設定されたヘッダーはNavigate()フレーム付きページには適用されません。

MSDN ( http://msdn.microsoft.com/en-us/library/aa768326%28v=vs.85%29.aspx ) によると、ヘッダー値のパラメーターは ByRef として渡されます。

それで単純に新しい価値を入れてみたのですが、うまくいきませんでした。

ですから、メモリに格納されている値を直接変更すれば実現できるのではないかと考えています。そこで、以下を試してみましたがうまくいきません。

何か案が?

0 投票する
2 に答える
1317 参照

vba - Navigate2 デバッグ

IE の複数のタブで指定された一連のリンクを開くために、VBA を使用してマクロを作成しようとしています。現在、私は以下のコードを使用しています。3 つ以下のタブを開こうとしている場合、ほとんどの場合は機能します。3 を超えると、コードは「Navigate2」セクションでクラッシュします。いくつかの調査の後、これに対する一般的な問題または解決策を見つけることができないようです。コードは次のようになります (明らかな理由により、リンクは削除されています)。

どんな助けでも大歓迎です。

0 投票する
0 に答える
166 参照

c# - BeforeNavigate2 イベントが 32 ビット Windows 7 Internet Explorer 11 で機能しない

C# で BHO を実装しました。これは、BeforeNavigate2 イベントを使用します。64 ビット Windows 7 システムの Internet Explorer 11 で動作しています。

32 ビット Windows 7 システムでは、BeforeNavigate2 イベントはトリガーされません。ただし、SetSite メソッドが呼び出されます。

32 ビットで BeforeNavigate2 イベントがトリガーされないのはなぜですか? この動作を引き起こす可能性のある 32 ビットと 64 ビットの Internet Explorer 11 の正確な違いは何ですか?