2012-04-25 17 views
0

私が間違っている場合:Flex WebアプリケーションでActivex Dllを使用

JBossで実行されているFlex-BlazeDS-Springには、既存のWebアプリケーションがあります。

ExternalInterface.call("eval", 
         "try { "Test" + 
         " = new ActiveXObject('DllName.FunctioninDll'); }" + 
          "catch(e) { document.getElementById('" + dis+ 
          "').SetLastError(e.message); } "); 

上記のコードで、私はActiveXObjectをが定義されていません」のMozillaでエラー を「オートメーションサーバーはオブジェクトを作成できません」受信:私たちは以下のようにExternalInterface.callを使用しているので、私たちは、クライアントマシンからDLLを読み込む必要があります"

親切に示唆

周りのすべての作業がある場合には感謝

+0

これはブラウザのセキュリティ設定によるものだと思います。ブラウザのセキュリティをオフ/縮小し、再度テストしてください。 –

+0

こんにちはサム、ありがとう、しかしそれはまだそれは、IEを使用して完全に実行するアプリケーションを作るこのISのための他の回避策は、親切に示唆している。 –

答えて

2

は、ActiveXはInternet Explorerでのみ使用可能です。 HTML object tagを試してみることもできますが、うまくいくかどうかはわかりません。

+0

こんにちはGerhard、そうですね。ActiveXを使用すると、ユーザーはI.E. (しかし、私はまだこのdllを使う必要があります、私は嫌いですが、このdllを使ってスキップしません)。クライアントマシンのローカルDllと通信できる方法はありますか?もう一度ありがとうございます –

+1

まあ、あなたはブラウザプラグインを書くことができます。 [NPAPI](https://developer.mozilla.org/en/Plugins)はIE以外のすべてのブラウザで動作するはずです。 [FireBreath](http://www.firebreath.org/)もご覧ください。 Javaアプレットを使用し、JNIを使​​用してDLLのいくつかのメソッドを呼び出すこともできます。しかし、特定のDLLが利用可能でなければならない場所でWindowsを実行する必要があるので、なぜIEも必要としないのですか? –

+0

+1 JNIを使​​用するアイデアのために、はい、VC++を使用してそのJNIをラップすることができました。私は私と一緒にラップされたDLLを持っています.Dllはきれいなフォームコマンドモードで動作します。 AMをjarファイルにラップしようとしています..しかし、このjarファイルを実行時のflexコンポーネントでどのように読み込むことができますか? –

関連する問題