問題タブ [ihtmldocument2]
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.
c# - Iframe が C# で読み込まれたかどうかを検出するにはどうすればよいですか
Iframe が読み込まれたかどうかを HTML ドキュメントで識別したい。
これが私が試したことですが、これが IFrame の読み込みを識別する正しい方法であるかどうかはわかりません。
html - IHTMLDocument2_write により Internet Explorer のセキュリティ ポップアップが表示される - Powershell
ローカルに保存された html ファイルを開いてファイルを解析する Powershell スクリプトがあります。作成されたサーバーから実行すると、正常に動作します。ただし、今後常駐する必要があるサーバーから実行すると、IE Security ポップアップが表示され続けます。コードは次のとおりです。
変数 $SrcFilePath は、HTML ファイルがローカルに保存されている場所へのパスです。ラインになったら
[閉じる] をクリックすると、スクリプトが再開されます。問題は、このスクリプトが自動化されるため、表示されたときに [閉じる] ボタンをクリックする人が物理的に周りにいないことです。
HTMLファイルが保存されている場所に共有を作成し、IEの信頼済みサイトに追加しようとしました。セキュリティ レベルを変更し、about:security_scriptdriver64.exe を IE のローカル イントラネットに追加しましたが、どれも機能しませんでした。何か案は?
詳細更新 これを実行しているサーバーは Windows 2016 で、IE のバージョンは 11 です。
私が解析しているhtmlファイルは、サーバー上にローカルに保存されています。つまり、E:\temp\webpage.htmlです。
共有を作成して信頼済みサイトに追加したとき (NetBIOS と FQDN の両方で試しました)、「サーバーの検証が必要」オプションのチェックが外されていました。
about:security_scriptdriver64.exe を信頼済みサイトに追加することも試みました。
また、管理者とユーザーの両方に対してサーバー マネージャーを使用して「IE セキュリティ強化の構成」をオフにしましたが、これは機能しませんでした。
更新 2 前回のコメントで、about:security_scriptdriver64.exe を信頼済みサイトに配置し、テストしたところ、機能しなかったと述べました。Invoke-WebRequest の使用を調べて、それで遊んでみました。問題があったので、IHTMLDocument2_write ソリューションに戻ると思いました。必要最小限の html ファイルを使用して、1 行 1 列のテーブルが 1 つあることから始めようと考えました。私の計画は、元の html ファイルからベアボーンにタグをゆっくりと追加することでした。オリジナルでやり直そうと思ったら、タイトルタグを更新するところまで行きました。出来た。
about:security_scriptdriver64.exe を信頼済みサイトから削除し、再試行しました。それでもうまくいきました。私はそれを残しましたが、すべてがうまくいったので、製図板に戻りました.
信頼済みサイトに about 行を追加することから始めました。動作しなかったので、必要最低限の HTML からやり直しました。ファイルには JavaScript のブロックがあります。ベアボーン ファイルに追加すると、機能しませんでした。外すと効きました。だから、それはJavaScriptです。先週なぜそれが機能し始めたのか、まだわかりません。HTML ファイルは常にその JavaScript ブロックで生成されます。SMH。
vba - テーブル内をクリックするVBA IE
('href' )
呼び出された「WS557568037 / Personal Workspace」をクリックする必要がありますが、何も機能しません。私はこのコードを試しました:
HTML
delphi - IHTMLDocument2 インスタンスを TWebBrowser インスタンスに割り当てる
この投稿で説明されているように、インターフェイスのインスタンスを使用してIHTMLDocument2
HTML を解析しています。
IPersistMoniker からの読み込みで、解決できない URL の読み込みに時間がかかる
コードは比較的単純です。
完了したら、上記で新しく変更した HTML コンテンツを保存し、HTML を にdiDoc2
ロードしますTWebBrowser
。
代わりに、上記で既に解析された を に含まれている に
IHTMLDocument2
直接「割り当てる」ことができますか?これは、はるかに高速な方法のようです。おそらくまたは他の方法を使用してそうすることができますが、最初に可能であれば、既に初期化されたオブジェクトにポインターを割り当てるよりもパフォーマンスが低下する可能性があります。言い換えれば、ソートの「バックバッファー」で解析したばかりのものを「表示」/「レンダリング」したいだけです。IHTMLDocument2
TWebBrowser
IHTMLDocument2.write
CoInitialize
電話のCoUninitialize
前後に電話する必要はありCoCreateInstance
ますか?それを行うコードを見たことがありますが、Delphi/C++ Builder が内部で初期化を行わない限り、それがなくても機能します。