問題タブ [xpcom]

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

c# - ブラウザを閉じずにgecko/firefoxセッションを削除または無効にすることは可能ですか?

gecko / firefox XPCOMインターフェースを使用して、ブラウザを閉じずにユーザーのアクティブなセッションを削除または無効にすることは可能ですか?アプリケーションでGeckoEmbedded (具体的にはGeckoFX)を使用していますが、アプリケーションの存続期間中、複数のユーザーがブラウザーコンポーネントを使用する可能性があります。

アプリケーションは、他のさまざまな機能を備えたWebブラウジングをパッケージ化し、Webブラウザーが「閉じられている」場合、アプリは開いたままになります。geckoエンジンに関する限り、プロセスが閉じられていないため、アクティブなセッションはまだアクティブであるようです。たとえば、ユーザーがGmailまたはFacebookにログインしてからブラウザを閉じる場合、ブラウザを再度開いてそれらのページの1つに戻ると、そのユーザーは引き続きログインしていると判断されます。複数のユーザーがアプリケーションを使用できるためアプリケーションが実際に終了しないと、プライバシーの問題が発生します。

ブラウザコントロールのコンストラクタ/disposeメソッド内でNS_InitXPCOM2NS_ShutdownXPCOMを呼び出そうとしましたが、プロセスの存続期間内にNS_ShutdownXPCOMの後にNS_InitXPCOM2を呼び出すことができないため、これは単にクラッシュします。

また、nsISHistoryのPurgeHistoryメソッドとnsICacheServiceのevictEntriesメソッドを使用しました。これらいずれも、プロセスの存続期間内にすぐに影響を与えるようには見えません。

これを実現できるXPCOMインターフェースを知っている人はいますか?または、XPCOMインターフェイスまたはFirefox拡張機能を介した同様の機能へのポインタをいただければ幸いです(ブラウザを再度開かずに現在のブラウジングセッションをクリアできる拡張機能はありますか?またはそれぞれの間で異なるセッションを提供します) Firefoxウィンドウ/タブ?)

プログラムはC#で記述されていますが、どの言語での回答も歓迎します。

どうもありがとう

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

c++ - XPCOM C++: 正規表現をサポートしていますか?

いくつかの RegExps 関数を使用する必要がある XPCOM C++ コンポーネントを開発しています

XPCOM C++ には RegExps のサポートが組み込まれていますか?

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

java - Java + Mozilla XPCOM で HTTP ストリームのコンテンツを取得する

私はよく StackOverflow をソースとして読んで答えを得ました。しかし今、私は非常に具体的な質問をしており、インターネット上で実際にデータを見つけることができません. いつものように助けてくれると信じています!:D

基本的に、Linux 上の Java アプリケーションで SWT ブラウザーの HTTP ストリームを分析するために、Mozilla の XULRunner とその XPCOM オブジェクトに依存しています。

Java SWT Web サイトの Snippet128 と Snippet321 に大きく基づいています (1 つ以上の URL を投稿できません:/木など。

完全なソースはこちらです。

今...それはもうかなり良いです。それは私がやりたいことの大部分をカバーしています(最初は学校の課題、求められたよりも少し進んでいます!)。

しかし、私が本当に望んでいるのは、すべての HTTP リクエストから生の「コンテンツ」データを取得できるようにすることです。もちろん HTML です。CSSや画像も。

この目標を達成するためにさまざまな方法を試してきましたが、これまでのところすべて失敗しました。

  1. XPCOM オブジェクトの使用 - どれ?

    • nsIInputStream は良いものです。しかし、良いストリームが実際にどこにあるかを見つけることができないようです... nsIHttpChannel open() メソッド (nsIInputStream を返す) が SWT ブラウザによって呼び出されているようで、ストリームを取り戻す方法がありません。
    • nsIRequest : 運が悪い。
    • 私が見逃していた別のリスナー?nsIHttpActivityObserver インターフェースを使おうとして 1 時間費やしましたが、HTTP コンテンツは何も得られません (GET と 200 OK だけです)。
  2. 別のオブジェクトを使用する

    • たとえば、SWT のブラウザー。それはちょっとうまくいきます: その getText() メソッドは、私が訪れているページの html ソースを私に与えます。でももっと欲しい!

私は本当にここで立ち往生しています。助けていただければ幸いです。

乾杯!

フロラン

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

xul - Firefox拡張機能を介してFirefoxがCSSをダウンロードして適用するのを止めるにはどうすればよいですか?

事前にみんなに感謝します-

そのため、私はかなり長い間この問題に取り組んでおり、すべてのオプションを使い果たしました。CSS リクエストをキャンセルする私の現在のアプローチは、nsIWebProgressListener.onStateChange 内の nsIRequest.cancel を使用することです。これはほとんどの場合うまくいきますが、物事が少し遅れている場合を除いて、私がそれらに到達する前にいくつかがすり抜けてロードグループから飛び出します. これは明らかに汚い解決策です。

次のリンクを読んで、nsIRequest が作成される前に css を無効にする方法をよりよく理解しようとしました...サイコロはありません。

https://developer.mozilla.org/en/Document_Loading_-_From_Load_Start_to_Finding_a_Handler https://developer.mozilla.org/en/The_life_of_an_HTML_HTTP_request https://developer.mozilla.org/en/Bird 's_Eye_View_of_the_Mozilla_Framework

プレゼンテーション オブジェクト/インターフェイスを介して css を無効にするにはどうすればよいですか? これは可能ですか?nsIDocShell の内部には、ブラウザーの docshell を介して css を無効にできることを示唆するいくつかの属性があります - allowPlugins、allowJavascript、allowMetaRedirects、allowSubframes、allowImages。

助言がありますか?

ありがとう、

サム

0 投票する
5 に答える
1085 参照

mozilla - moz_xmalloc() を使用するには、gecko 1.9.3 SDK のどのライブラリにリンクすればよいですか?

XPCOM 拡張機能を 1.9.3a3pre SDK にリンクしようとすると、次のようになります。

エラー LNK2001: 未解決の外部シンボル _moz_xmalloc

では、どのライブラリにリンクする必要がありますか? ドキュメントは言いません。

これは現在 Windows 上にありますが、Mac と Linux (32 ビット/64 ビット) でもビルドする必要があります。

編集:賞金付きになりました。

編集: 更新: FF3.7 がキャンセルされたことが判明しました。だからFF4までは気にしなくていい。

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

firefox - contentWindow.historyを使用したFirefoxの非表示ウィンドウのiFrame?

Firefox拡張機能でコンテンツ権限を持つホストされたスクリプトを実行しようとしています。これを行うには、スクリプトをプルするhtmlファイルを指す非表示のウィンドウにコンテンツiframeを作成します。このスクリプトでは「履歴」が利用可能である必要がありますが、非表示のウィンドウで作成されたiframeには何らかの理由で履歴がありません。

Chromebugは、iframeのcontentWindow.historyについてこれを報告します。

object does not support history (nsIDOMHistory)

そして、スクリプトが利用できない場合、スクリプトはこのエラーを出します。

Error: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMHistory.length]

何か案は?

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

xpcom - これらのコンポーネントを呼び出すためにコードに何かを含める必要はありますか?

Firefox/3.6 を使用しています。上記のコードは呼び出されません。これらのコンポーネントを呼び出すために、コードに何かを含める必要があるかどうかを知りたいです。**を使用してチェックしたように、私のブラウザではこれらのXPComponentが利用可能です

XPComViewer.

Plzzz できるだけ早く返信してください。

よろしく、rahul......


私はこれだけが好きでしたが、次のエラーが発生しています:

エラー: プロパティ XPCComponents.classes を取得するためのhttp://localhost:8080のアクセス許可が拒否されましたソース ファイル: localhost:8080/ViewerSoln 行: 60

Firefox 2.0 と 3.6 の両方でこれを試しています。そのWindows環境。できるだけ早く何か提案してください。

ありがとう、ラフル。

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

python - Python Virtualbox API を使用する利点は何ですか?

XPCOM を使用する代わりに python virtualbox API を使用する利点は何ですか?

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

xul - 「onload」スクリプトが終了したときに通知を受け取る方法

HTML ページがロードされたときに通知を受け取る

-> onStateChange、stateFlags: STATE_IS_NETWORK + STATE_STOP

しかし、ページが読み込まれ、onload スクリプトの実行が終了したときに通知が必要です。

ヒントはありますか?THX

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

javascript - .idl を使用せずに Javascript 内で C++ クラスを使用する

インターフェイスが .idl ファイルを介して公開されていないクラスでメソッドを呼び出すことは可能ですか?

私の特定のケースでは、 @mozilla.org/gfx/fontmetrics;1クラスを使用したいと思います。このクラスのインターフェースnsIFontMetricsには対応する .idl ファイルがありません。