問題タブ [npapi]
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.
firefox - NPAPI プラグインのインスタンス化中に Firefox がクラッシュする
以前はプラグイン全体が、多くのグローバル変数と静的変数を使用した非常に単純な実装として機能していましたが、現在はオブジェクト ベースの設計に変換しているため、複数のインスタンスを安全にインスタンス化できます。
ただし、プラグインのインスタンスを作成すると、MyScriptableNPObject::NewObject() メソッドまで到達し、そこで createobject() を呼び出そうとしますが、返されず、ブラウザーがクラッシュします。
これをデバッグする簡単な方法としていくつかの基本的なログがそこにあり、このメソッドが予想どおり getValue() から呼び出されていることがわかりますが、最終ログは決して出力されないため、createobject( )。
NPObject に対して独自の Allocate() メソッドを定義しましたが、NPClass は、私が知る限り正しく定義されているようです。これらは次のとおりです。
npnfuncs 構造体も有効です。だから私は何がうまくいかないのか少し困惑しています!
どんな助けでも大歓迎です、
ありがとう。
webkit - npapi フルスクリーン
WebKit で動作する npapi プラグインがあります。フルスクリーンで動作させるにはどうすればよいですか? 画面ブラウザs or plugin
の設定は仕事ですか?
javascript - WScript.Shellの機能を使用してNPAPIプラグインを作成する方法
私はWeb開発に非常に慣れておらず、ActiveXを介してWScript.Shellを利用するJavaScriptを作成しています。IE以外のブラウザはActiveXをサポートしていません。
Googleを掘り下げてみたところ、NPAPIを介してすべてのWebキットベースのブラウザーで同様のことができる可能性があることがわかりました。しかし、これに関してはどこから始めればよいのかわかりません。NPAPIを介して私が求めていることを行うことは可能ですか?もしそうなら、私はどこから始めますか?
c++ - Linuxでファイルのデフォルトアプリケーションを開始する
FirefoxNPAPIプラグイン+XPCOMコンポーネントに取り組んでいます。私はジレンマに遭遇しました:インターネットからダウンロードされたファイル(PDFやPNGなど)を考えて、C / C ++を使用してLinuxでそのファイルを表示するためにデフォルトのヘルパーアプリケーションを起動するにはどうすればよいですか?
現在、system
関数呼び出しを使用してgnome-open
コマンドを呼び出し、ファイルパスを渡しています。これはGNOMEデスクトップでは機能しますが、異なるデスクトップ環境(KDEを含む)のLinuxプラットフォームでは機能しません。
だから私の質問は:これを行うための標準的な統一された方法はありますか?何かお勧めはありますか?どんな助けでも大歓迎です!
firefox - NPN_MemFreeがGoogleChromeに返されるデータをねじ込んだ後のNPN_MemAlloc
NPAPIプラグインを終了しました。これは、Google Chromeで正常に機能しますが、奇妙な問題があります。問題は、ブラウザに文字列を返すメソッドをプラグインにコーディングしたことです。そのためには、ブラウザにメモリを割り当て、結果の文字列をブラウザにコピーする必要があります。何かのようなもの:
'm_pPtr'はクラスのデータメンバーであり、構築時にNULLに初期化されることに注意してください。このメソッドをGoogleChromeから2回呼び出すと、問題が発生します。初めてそれはうまくいきます。2回目以降は、ブラウザに「X」と表示されたガベージ値を返します。Firefoxで同じプラグインをテストしましたが、メソッドを何度呼び出しても正常に動作し、正しい値を返します。しかし、プラグインをロードしたページを閉じると、Firefoxがクラッシュします。
この奇妙な状況で何が起こるかについてのポインタはありがたいです。私はそれに取り組んでおり、有用な情報に到達したらスレッドを更新します。
installation - HKLM \ Software \MozillaPlugins\にリストされているNPAPIプラグインをインスタンス化できません
NPAPIプラグインを作成しました。これを%ProgramFiles \ Mozilla FireFox \ pluginsに配置すると、インスタンス化されて正しく実行されます。ただし、他のブラウザでも動作させたいので、ここで説明するように、HKLM \ Software \MozillaPlugins\に登録することをお勧めします。したがって、インストーラーで、次のレジストリエントリを作成します。
[HKEY_LOCAL_MACHINE \ SOFTWARE \ MozillaPlugins \ @ alanta.com / WinVncCtl]
"ProductName" ="WinVncNPAPIコントロール"
"Path" = "C:\ Program Files \ Alanta \ WinVncCtl.dll"
[HKEY_LOCAL_MACHINE \ SOFTWARE \ MozillaPlugins \ @ alanta.com / WinVncCtl \ MimeTypes]
[HKEY_LOCAL_MACHINE \ SOFTWARE \ MozillaPlugins \ @ alanta.com / WinVncCtl \ MimeTypes \ application / x-alanta-vnc]
"Description"="AlantaのVNCサーバーNPAPIプラグイン"
そしてもちろん、私のインストーラーはWinVncCtl.dllファイルを正しい場所に配置しています。(また、ダイスなしで「np」で始める必要があるかもしれないという理論の下で、名前をnpWinVnc.dllに変更しようとしました。バージョンタグ、MIMEタイプなどのさまざまな組み合わせも試しました。)
私はそれを次のようにインスタンス化しています:
しかし、それはそのようにインスタンス化されていないようです。ただし、前述のように、オブジェクトタグのclassidを省略し、プラグインディレクトリにファイルnpWinVnc.dllを配置するだけで、問題は解決します。
私のアプローチで何がうまくいかないのかについて何か考えはありますか?
internet-explorer - ActiveXコントロールをNPAPIプラグインに変換する方法
*近くのワイヤレスネットワークを検索する*ワイヤレスアクセスポイントを作成する*ネットワークアダプターを管理するように設計されたActiveXコントロールがあります
このプラグインをGoogleChrome/Firefoxで動作させたいです。IEでは; 次のコードを使用して埋め込むことができます。
そして私は次のようにワイヤレスネットワークを作成します(JavaScriptで):thectrl.createNetwork( "test"、0、null、 "NONE"、3); ActiveXにはIDLファイルがあり、OCX形式で出力されます。これをGoogleChrome/ Firefoxのプラグインに変換するにはどうすればよいですか?
macos - OS XのNPAPIから外部実行可能ファイルを呼び出しますか?
私はOSXでアプリケーション(ダウンロードマネージャータイプ)を開発しており、MozillaプラグインAPIであるNPAPIを介して主要なMacブラウザー(Safari、Firefox、Chrome、Opera、Camino)と統合したいと考えています。Macにアプリを登録して特定のURLとファイルタイプを処理する方法(Launch Services API、info.plistファイルなどを介して)について基本的な知識があり、特定のMIMEタイプに登録できることも理解しています。 NPAPIで。ただし、NPAPIドキュメントには、外部アプリケーションと統合するためのフックはほとんどありません。つまりNPN_GetURL()
、ハイパーリンクがクリックされたときにURLを取得し、このデータを外部アプリケーションに渡します。外部アプリケーションの呼び出しについて私が見つけた唯一の参照は、system
Cで機能しますが、これが唯一の方法であるとは信じがたいです。他のMacアプリ(ダウンロードマネージャー)がこの方法でブラウザーと統合できることは知っていますが、それに関するドキュメントはほとんどないようです。NPAPIの目的を誤解していますか?
linux - Linux上のNPAPIとGoogleChrome
LinuxでNPAPIプラグインを使用していますが、Google Chromeでいくつかの問題が発生しました(Firefoxでは完全に機能しますが)。
NPN_Evaluate
まず、プラグインの実行がハングし、長い悲惨な時間の後に、最後のパラメーター(返されたresult
)がNULLのときに呼び出しがハングすることがわかりました。Firefoxで問題なく動作します。NPVariant
解決策は、型変数のアドレスをパラメーターとして渡し、値を無視することでした。
その後、プラグインは正常にロードされますが、次のエラーメッセージが表示されません。プラグインですが、xembedはありません。http://code.google.com/p/chromium/issues/detail?id=38229を参照してください
このプラグインを機能させる方法について何かアイデアはありますか?
linux - Firefox および Google Chrome からのクラッシュ ダンプの処理
Firefox および Google Chrome (Windows、Linux、および Mac) 用のクロスプラットフォーム NPAPI+XPCOM 拡張機能を開発しています。コンポーネントのクラッシュを処理するためのベスト プラクティスについて誰か教えてもらえないかと思っていました。
私が理解しているように、現在 Mozilla の Crash Reporter は、作成されたミニダンプとクラッシュ レポートを Mozilla Dev に提出しています。私は SIGSEV を Firefox にブロックし、プラグイン コードで独自のコアを作成して実験しました。それはうまくいきますが、私はそうすべきではないと確信しています。
また、Google Chrome はコア ダンプを作成していないようです。助言がありますか?