問題タブ [universalxpconnect]

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

javascript - XPConnect (Firefox) - オブジェクトから値を取得する方法

クリップボード JavaScript 関数から読み取りを作成しようとしていますが、通常は機能していますが、out パラメータ (Components.interfaces.nsITransferable) を使用して作成したオブジェクトから実際の文字列を抽出できないようです。ご参考までに、これはローカル イントラネット用であり、クリップボードへのアクセスを有効にしています。

これは、out パラメーターのオブジェクトを作成して設定するコードの一部です。obj_length.value を返すと、正しい長さ (Unicode の場合は *2) が得られるため、基本的に機能していることはわかっています。ただし、obj.value は [xpconnect でラップされた nsISupports] 型のオブジェクトしか提供しません。クリップボードの内容を含む文字列が必要です!

クリップボードの内容を抽出する方法を教えてください。私はとても近いです!

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

javascript - Firefox で JavaScript を使用して Outlook を開く

Javascript から Outlook を開きたいのですが、これは内部アプリケーション用であり、Web にヒットするものは何もありません。お客様は IE を使用しており、Firefox と Outlook がインストールされます。セキュリティは問題ありません。

この場合、「mailto:」だけでは十分ではありません。メールにファイルを添付する必要があるため、「mailto:」を使用してもこれを実行できないようです (古いフォーラム エントリが見つかりました。しかし、私が試したものは何も機能せず、mailto URL スキームは公式にサポートしていないようです)。しかし、IE では ActiveX を使用できます。

そして、私はそれをいじり、体を追加し、添付ファイルを追加することができます.

Firefoxで何らかの方法でこのようなことは可能ですか?

私がすでに知っていたのは、tiddlywiki が何らかの方法でハードディスクに自分自身を保存できるという点で、いくつかの異常なことを行うということでした。というわけで、ソースを調べたところ、次のことがわかりました。

私が理解しているように、スクリプトはブラウザ API/ XPConnect /XPCOM にアクセスできます。しかし今、私は立ち往生しています。Outlook オブジェクトを実際に開くにはどうすればよいですか? これは実用的なアプローチでしょうか?わからない。多分他のアイデアはありますか?アドバイスをいただければ幸いです。


更新: OK、いくつか読んだ後、私の質問の 1 つに次のように答えることができると思います: いいえ、XPCOM を実装している Mozilla API は外部プログラムを開くようなものをサポートしていないため、このアプローチは機能しません。まだ質問が残っています: 他のアイデアはありますか?

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

javascript - JavaScriptでチャンクごとにローカルファイルを読み取る方法は?

たとえば、ローカルハードドライブに500バイトのサイズのファイルがあり、ファイル全体をメモリにロードせずに、最初の100バイトを読み取りたいとします。の助けを借りてJavaScriptでそれを達成する方法はUniversalXPConnect?もちろん、Firefoxのみ。

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

javascript - JavaScriptでローカルファイルをチャンクで読み取る方法は?

Firefox で JavaScript を使用してローカル ファイルをチャンク単位で読み取る方法を学習しました ( JavaScript でローカル ファイルをチャンク単位で読み取る方法は? )。

しかし、最初の数バイトではなく、特定の範囲のバイトを読みたい場合はどうすればよい100-200でしょうか。どうにかしてオフセットを設定することは可能ですか?

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

javascript - 唯一のオプションは、そのコード ブロックを各関数に含めることですか?

私の機能のいくつかは、UniversalXPConnect特権を有効にする必要があります。

したがって、私の関数は次のようになります。

実は、私も特権が拒否された場合tryを例外にしています。catch次のようになります。

それを別の関数にして、次のように関数内から呼び出すことをお勧めします。

関数enablePrivilegeが次のようになるとします。

ただし、セキュリティ上の理由から、権限は要求関数の範囲内でのみ付与されるため、これは不可能です。

では、唯一のオプションは、そのコード ブロックを各関数に含めることですか?

アップデート:

他のいくつかの例外についても説明tryするのでcatch、最終的には次の設計になりました。

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

javascript - firefox 17 での UniversalXPConnect 権限エラー

iframe との間でフォーム データをコピーおよび挿入する小さな Web JS があります。しかし、Firefox 17 では機能しません。次のコードを使用しています。

何が間違っている可能性がありますか?回避策はありますか?