問題タブ [twebbrowser]

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 に答える
855 参照

delphi - ドキュメントの完成後にアドセンス コード TWebbrowser オブジェクトを変更するにはどうすればよいですか

ドキュメントの完成後にアドセンス コード TWebbrowser オブジェクトを変更するにはどうすればよいですか

div の innerhtml を変更しようとしましたが、アドセンスのコマーシャルが表示されません。

私のコードブロック

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

delphi - Delphi TWebBrowser がファイルのハイパーリンクをクリックしても応答しない

TWebBrowser コンポーネント (Delphi 7) があり、メモリ ストリームから HTML をロードしました。ページの HTML コードが正常に読み込まれ、ページが正しく表示されます。しかし、「file:///C:/dir/page.html」のようなアドレス (href 属性値) を持つハイパーリンクをクリックしようとすると、何も起こりません。エラー メッセージは表示されず、ブラウザは別のページに移動しようとしません。URL は 100% 正しいです。同じ Web ページを同じ TWebBrowser インスタンスにロードすると、メモリ ストリームではなくハード ドライブ上のファイルから、まさにこのリンクが正常に機能します。何が間違っている可能性がありますか?


次のステートメントを実行しようとしました。

、しかし、それらは何も変更しませんでした (エラーなしで正しく実行されました。つまり、常に HRESULT = S_OK です)。TWebBrowser は同じように動作しますが、コンポーネントは実際には TEmbeddedWB (SecurityManager プロパティを持っています) であると言わざるを得ません。

一時ディレクトリ内のファイルを使用することに頼ることを考えています。


おかげさまで、一時ディレクトリ内のファイルを使用して、最終的に問題を回避しました。

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

delphi - キープレスを TWebBrowser から ParentForm にリダイレクトする方法

最初の質問。必要に応じてフォーマットを手伝ってください。

コンテキスト
メイン フォームに、プリンタのように動作する TWebBrowser があります。
そのため、ユーザーが実際のプリンターでいくつかのコマンドを実行すると、HTML テキストが読み込まれます...
ユーザーが WebBrowser からテキストをクリックして選択できるようにしたいと考えています。

問題
ユーザーが WebBrowser をクリックすると、アクションから登録されたショートカットの一部が機能しなくなります。たとえば、ショートカットを使用したアクションがありF7ます。ユーザーが WebBrowser をクリックして F7 キーを押しても、ショートカットは呼び出されません。
これは WebBrowser の設計によるものであることはわかっています。

そこで、すべてのキーの組み合わせをフォームに送り返したいと考えました。
問題は次のとおりです。
それが別のコントロールであればperform(WM_KeyDown,...)OnKeyDownイベントで a を使用できます。

代替案や提案もいただければ幸いです。この 2 日間、とても疲れていたので、何かが足りないかもしれません。

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

delphi - プロキシを指定すると TWebbrowser が機能しない

Windows XP では、インターネット オプションを編集してプロキシの詳細を設定し、IE8 を開きます。プロキシのユーザー名とパスワードを要求すると、正常に動作します。

次に、TWebbrowser でアプリを開きますが、すべての URL の読み込みに失敗します。ページの読み込みに失敗したというデフォルトのウィンドウ表示ページが表示されます。

TWebbrowser をプロキシで動作させるために何か特別なことをする必要はありますか?

Delphi XE

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

windows - TWebbrowser のクリック音

この回答から CoInternetIsFeatureEnabled in Delphi2010

クリック音を止める方法をご存知の方教えてください。別のpasファイルにドロップすると、Delphi XEで機能しないようです。欠品あります。コンパイルできないその他の理由で、少し行き詰まっています。

これが私がしたことです。

0 投票する
3 に答える
1890 参照

delphi - TWebbrowsers HTML にアクセスしようとするとアプリケーションがロックする

編集 この1行に絞り込み、

これは時間を消費します...どうすればスピードアップできますか?

次のコードを使用すると、ページ (Delphi XE) の HTML にアクセスしようとしているときに、アプリケーションが 1 ~ 2 秒間ハングすることがあります。

ただし、GetHTML メソッドで何かを返すのに 1 ~ 2 秒かかり、UI がロックされることに気付きました。Delphi XE で AQTime を見ると、メソッド呼び出しが遅い (1 ~ 2 秒) と表示されます。散発的で、ページがまだロードされているときに失敗するのではないかと思います。

私が読み込んでいるページは社内ページであり、javascript でいっぱいで 500k の大きさです。ページの準備が整う前に起動するため、OnDocumentComplete を使用できません。

TWebbrowser の HTML にアクセスできる高速な方法があれば、誰でも光を当てることができますか?

0 投票する
4 に答える
4926 参照

delphi - IHTMLDocument が使用するメモリを解放するには?

IHTMLDocument (IHTMLDocument2) を使用した後にメモリを解放する方法はありますか?

現在、EmptyWorkingSet関数を使用していますが、それは良い方法ではないと感じています

TWebBrowser を解放しても役に立ちません。問題は、メモリから解放されていない IHTMLDocument COM クラスにあるようです。それを解放する明確な方法はありますか?Marshal.ReleaseComObjectのようなものですが、Delphi で利用できますか?

JavaScript を実行するよりも少ないメモリ損失で再現可能ですが、それでもなお. フォームの上部に2つのボタンを配置して、次のコードを試してみると...

WebBrowser が解放されるたびにメモリが失われるのがわかります。JavaSrcipt を実行すると、300 kB をはるかに超え、約 1 MB になり、これを何度も実行するとメモリ リークが発生する可能性があります。

どうもありがとう

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

delphi - 親ウィンドウのない TWebBrowser

Console/Service タイプのアプリケーション (ウィンドウなし) で TWebBrowser を使用しようとしています。Navigate は確実に何かを行っていますが、onDocumentComplete を呼び出すことはありません。URL の IHTMLDocument2 にアクセスする他の方法はありますか?

ありがとうございました。

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

twebbrowser - 実行時の TWebBrowser と FEATURE_BROWSER_EMULATION

実行時に TWebBrowser を作成および破棄し、FEATURE_BROWSER_EMULATION を使用してブラウザ モードを切り替えてから、TWebBrowser を再作成して、アプリケーションを再起動せずにモードを切り替えられるようにしようとした人はいますか?

設定はアプリ起動時のみ読み込むのか、Webブラウザコントロール作成時のみなのか気になります。

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

delphi - TWebBrowser でも新しいページを開く

twebBrowser を含むアプリを作成しました。問題は、gmailなどのリンクをクリックすると、デフォルトのブラウザ(IE)の新しいウィンドウで開くことです。クリックしたリンクをウィンドウで開くFirefoxやChromeなどのように機能させるにはどうすればよいですか。URL は TWebBrowser のウィンドウで開く必要があります。そのために、実行時に TWebBrowser を含む新しいフォームを実行時に作成する必要がありますか? コード自体は必要ありません。アイデアで十分です。

前もって感謝します。

PS私の組織はGmail、Facebookなどをブロックしていますが、TWebBrowserを介して開くことができます。私のQA担当者はログでそれを見ることができますか? 彼らはそれをブロックするので、私の推測ではノーでしょう。これについてのあなたのコメントは何ですか