2

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

例: デスクトップの背景を Flash アプリから提供された画像に設定しますか?

可能であれば、別の OS に適用すると別の呼び出しになります。Mac のクロスオーバーについてはどうでしょうか。

どんな情報でもいいです

ありがとう

4

3 に答える 3

2

C#アプリ内からswfを起動する場合は、外部インターフェイスで問題なく動作します。フラッシュ側では何も変わりませんが、C#で機能させるには、いくつかのフープを実行する必要があります。AMFやJSへの外部インターフェースほど単純ではありません。

C#へのすべての通信は、データを記述するXMLに変換され、フラッシュに送り返すXMLを作成する必要があります。それ以外は、比較的単純です。

これを行う方法に関するいくつかの情報があります。AS部分はFlash8/ AS2ですが、C#部分も同じように言う必要があります。

于 2009-07-09T13:21:21.793 に答える
1

WebページからまたはデスクトップアプリとしてFlashを操作する場合、小さなセキュリティサンドボックスに制限され、関連するOS呼び出しを行うことはできません。AIRに切り替えると開発者の柔軟性が上がると思いましたが、どちらも正しくないようです。「AdobeAirの長所と短所」から:

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

Alex Jillardがコメントしたように、swfがC#デスクトップアプリケーション内で呼び出された場合、方法はわかりませんが、より多くのOS機能にアクセスできるはずです。

于 2009-07-09T13:28:36.870 に答える
1

すでに述べたように使用できますAIR。別のアイデアは、使用することHippoHXです(私はこれを書いていません。私のユーザー名との類似性は単なる偶然です)。これは の上で実行され、システムへNekoVMの無制限の (したがって のような制限はありませんAIR) アクセスを提供します。

于 2009-07-10T11:34:48.743 に答える