2009-07-09 12 views
2

AS3でExternalInterfaceを使用すると、XP内でOS(C#?)関数を呼び出すことができますか?ActionScript 3のOS関数呼び出しExternalInterface

例:デスクトップの背景をフラッシュアプ​​リケーションによって提供される画像に設定しますか?

可能であれば、別のOSに適用した場合、異なる呼び出しになる可能性があります。そして、Macをクロスするのはどうですか?あなたがC#のアプリの中からswfファイルを起動している場合

すべての情報は

おかげ

+0

クロスプラットフォームに進む予定がある場合は、C#が最適な方法ではない可能性があります。私はあなたがJavaやPythonを試してみることをお勧めします。 –

答えて

2

素晴らしいことだ、外部インタフェースはうまくやるだろう。フラッシュの面では何も変わりませんが、C#で動作させるには、いくつかのフープを実行する必要があります。 AMFやJSへの外部インターフェースほどシンプルではありません。

C#へのすべての通信は、データを記述するXMLに変換され、XMLを書き込んでフラッシュに戻す必要があります。しかしそれ以外は、それは相対的に単純です。

Here's some infoです。 AS部分はFlash 8/AS2ですが、C#の部分は同じように記述する必要があります。

+0

私はちょうどその正確なページを見ていました。感謝のアレックス。 WindowsのOS機能(例:バックグラウンドの設定)との通信に関しては、デスクトップベースswfとOSの間のブリッジとして機能するようにC#スクリプトを作成する必要がありますか?またはOSと直接対話できますか?私はC#プログラミング言語について何も知らないことを心に留めておいてください。これはアイデアの研究です。 –

+0

さて、C#(または他のプログラミング言語)を使用する必要があります。セキュリティ上の理由から、Flashはほとんどのコンピュータにアクセスできません。他の言語でもEIを使用する方法はあると確信しています。私は数年前にDelphiでこれをやったことがあります...もっと最近、あなたはJavaやその他のものでもできると確信しています。 –

1

ウェブページやデスクトップアプリケーションからFlashを操作する場合は、小さなセキュリティサンドボックスに限定されており、関連するOS呼び出しを行うことはできません。私はAIRに切り替えるとデベロッパーの柔軟性が増すと思っていたが、どちらも正しいとは思わなかった。 "The Pros and Cons of Adobe Air" から:

AIRアプリケーションは ファイルアクセス、クリップボードへのアクセス、サポート 複数のウィンドウ、サポートドラッグ& ドロップを持っている、と通知 (Windowsのトースト)をトリガすることができます。他の の方法でデスクトップとやり取りする場合は、 のアプリが必要な場合は、AIRが でない可能性があります。たとえば、COMオートメーションへのアクセスは で、外部アプリケーションを実行する方法はありません( )。 の理由は、クロスプラットフォームを維持することです 互換性。それは価値ある目標だ、 しかし、それは砂場の の道を持っていることが良いだろう。 Javaまたは.NETとは異なり、 は、カスタム ネイティブコードライブラリでAIRを拡張することはできません。 もオペレーティングシステムAPIを呼び出すことはできません。

あなたのswfファイルをC#デスクトップアプリケーション内で呼び出された場合、アレックスJillardは、コメントとして、あなたは私がどのようにわからないが、より多くのOSのfuncionalitiesにアクセスすることができるはずです。

1

既に言及したように使用できます。AIR別の考え方は、HippoHXを使用することです(私はこれを書いていない、私のユーザー名との類似はちょうど偶然である)。それはNekoVMの上で実行され、システムに無制限にアクセスできます(AIRなどの制限はありません)。

関連する問題