1

dll と manifest.json ファイルで構成される npapi プラグインがあります。この npapi dll は、chrome でプラグインとして検出されます。つまり、about:plugins ページにリストされています。ただし、タグを使用してサンプル HTML ページでこのプラグインを呼び出すと、「プラグインの読み込みに失敗しました」と表示されます。このプラグインがクロムに​​読み込まれない理由を教えてください。

ありがとう

4

2 に答える 2

4

ご提供いただいた情報では断言できませんが、次の 2 つのいずれかであると推測されます。

  1. プラグインには、見つからない外部依存関係がある可能性があります。.DLL ファイルを必要とする別のライブラリにリンクしている場合 (または CRT の DLL バージョンに /MD を使用している場合)、ブラウザがプラグイン DLL を読み込もうとしたときに DLL が見つからない場合は、プラグイン黙って読み込みに失敗します

  2. プラグイン DLL が読み込まれている可能性がありますが、例外がスローされたり、不適切な処理が行われたりして、ブラウザーが有効なプラグインではないと判断する可能性があります。Chrome は通常、プラグインの欠落ではなくクラッシュとして報告するため、これは当てはまりません。ただし、これを確認するには、コマンド ライン引数 --plugin-startup-dialog を使用して Chrome を起動します。これにより、プラグイン DLL がロードされる前に pid を含むダイアログがポップアップします。その後、デバッガーをアタッチして、続行するように指示できます。

これら 2 つのうち、1 つ目は私が目にする最も一般的な問題です。Dependency Walker (depends.exe) を取得し、DLL をその場で開いて不足しているものを確認することで、トラブルシューティングを行うことができます。ieshims.dll が表示された場合、それは無視されます。これは常に欠落していると見なされますが、ブラウザーの実行中に検出されます。

プラグインのデバッグに関するその他のヒントは、http://npapi.com/x/MYAG で見つけることができます。もちろん、まだ実行していない場合は、遭遇する可能性のあるほとんどの NPAPI 問題を解決するFireBreathフレームワークを使用することをお勧めします。

幸運を!

于 2011-07-22T05:56:08.743 に答える
1

プラグイン .rc ファイルで MIME タイプを定義する必要があります。これを行わないと、プラグインが正しく読み込まれません:

VALUE "MIMEType", "アプリケーション/myapp"

于 2011-09-15T14:11:06.153 に答える