Fluorine之好用一定要來寫篇教學的啦。
1.安裝Microsoft Visual 2008
可以到這兒下載免費的開發版
http://www.microsoft.com/express/download/
選擇紫色的 Visual Web Developer2008 語言當然選繁中版的喔
下載完成就開始安裝, 然後一直下一步下一步到不能下一步。
2.安裝FluorineFx
可以到這兒免費下載
http://www.fluorinefx.com/download.html
下載完成後, 開始安裝, 也是一直下一步到不能下一步。
3.開啟VS2008
選擇上方工具列:檔案/新增/網站
會出現一個設定面版
選擇FluorineFx ASP.NET Web Site
下方的路徑存在本機路徑
語言選擇C#(VB也可以, 只是我很不熟VB)
設定好後,即可在VS2008看到這樣的檔案結構
5.新增類別檔。
在專案面版上,按下右鍵, 選擇加入新項目。
填上類別名稱:FxRemoting.cs ,選用C#語言。
按下確定後會出現一個訊息, 問你是不是要把.cs的檔放在App_code資料夾下,選擇是
5.C Sharp程式碼:
選擇在瀏覽器中檢視。
直接就可以有測試用的畫面。點擊後就可以看到回傳的資訊。
7.Flash端程式碼。
因為是用VS2008來模擬.net環境,所以需要先再VS2008的方案總管面版
找到Gateway.aspx,一樣按下右鍵,在瀏覽器中檢視。
此時畫面是整個空白的, 這是正常的,記下這段網址:
一些FlashAS3和C Sharp的比較心得
flash端使用package來將類別分開,
CSharp使用namespace
flash的類別需要放在和package一樣的路徑資料夾下
而CSharp不需要
flash使用var 變數: 型別 來宣告
CSharp使用 型別 變數 來宣告
CSharp類別可以有一樣的函式名稱, 只要傳入的參數不一樣即可
Flash則沒有這個功能。
SourceCodeDownload
因為本機在開發應用程式時, 會被flash的安全性檔掉, 所以要設定一下同意存取本機的程式。
先連到:
http://www.macromedia.com/support/documentation/tw/flashplayer/help/settings_manager.html
點選左邊選單的:全域安全性設定面板
此時右邊會出現一個flash設定管理員
下方的資訊應該是空的,點選右邊的編輯:
打上同意的路徑:看你的swf是放在那裡,就是路徑打上即可。
完成後如上圖,關掉Browser,重新發怖swf檔
1.安裝Microsoft Visual 2008
可以到這兒下載免費的開發版
http://www.microsoft.com/express/download/
選擇紫色的 Visual Web Developer2008 語言當然選繁中版的喔
下載完成就開始安裝, 然後一直下一步下一步到不能下一步。
2.安裝FluorineFx
可以到這兒免費下載
http://www.fluorinefx.com/download.html
下載完成後, 開始安裝, 也是一直下一步到不能下一步。
3.開啟VS2008
選擇上方工具列:檔案/新增/網站
會出現一個設定面版
選擇FluorineFx ASP.NET Web Site
下方的路徑存在本機路徑
語言選擇C#(VB也可以, 只是我很不熟VB)
設定好後,即可在VS2008看到這樣的檔案結構
5.新增類別檔。
在專案面版上,按下右鍵, 選擇加入新項目。
填上類別名稱:FxRemoting.cs ,選用C#語言。
按下確定後會出現一個訊息, 問你是不是要把.cs的檔放在App_code資料夾下,選擇是
5.C Sharp程式碼:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using FluorineFx; using FluorineFx.AMF3; // C#的 namespace,相當於Flash的 package namespace milkmidi { [RemotingService("milkmidi Fluorine sample service")] //這行一定要加, 否則會無法使用RemotingService。 public class FxRemoting { public FxRemoting() { } public string helloWorld() { return "FxRemoting return HelloWorld"; } } }6.完成後,在VS2008的方案總管面版上,找到Console.aspx,按下右鍵,
選擇在瀏覽器中檢視。
直接就可以有測試用的畫面。點擊後就可以看到回傳的資訊。
7.Flash端程式碼。
因為是用VS2008來模擬.net環境,所以需要先再VS2008的方案總管面版
找到Gateway.aspx,一樣按下右鍵,在瀏覽器中檢視。
此時畫面是整個空白的, 這是正常的,記下這段網址:
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.events.NetStatusEvent; import flash.net.ObjectEncoding; import flash.net.NetConnection; import flash.net.Responder; public class UseNetConnect extends Sprite { private const GATWAY_URL:String = "http://localhost:7629/FxTutorial/Gateway.aspx"; //連線的Gatway位置, 因為是用VS2008模擬.net環境, 所以上面的路徑每個人都會不同。 //安裝IIS測試會比較好。 private var _nc :NetConnection = new NetConnection(); //建立NetConnection物件。 public function UseNetConnect() { _nc.objectEncoding = ObjectEncoding.AMF3; //設定傳送的編碼, AS3當然是要使用AMF3格式, 如果是AS2的話,就要使用AMF0。 _nc.connect(GATWAY_URL); //連線。 _nc.addEventListener(NetStatusEvent.NET_STATUS, onNetConnectionStatusr); //偵聽連線事件。 var _btn:DemoButton = new DemoButton(); //建立一個測試用的按鈕。 _btn.addEventListener(MouseEvent.CLICK , onClick); this.addChild(_btn); } private function onNetConnectionStatusr(e:NetStatusEvent):void { if (e.info.code =="NetConnection.Call.Failed") { trace("連接遠程服務失敗"); } } private function onClick(e:MouseEvent):void { _nc.call("milkmidi.FxRemoting.helloWorld", new Responder(onEventResult, onEventStatus)); //使用NectConnectiong物件的call函式 /* * 參數一:要呼叫.net的類別名稱和函式名稱, 我們設定的是milkmidi類別包下的FxRemoting類別 下的helloWorld方法。 * 參數二:Responder物件, 當傳送成功或失敗時會呼叫的函式, 需填入二個function。 * 參數三到參數N:後面可以不斷的增加參數, 因為在.net的函式, 我們並沒有寫傳值。所以在這兒先不寫。 * */ //如當要傳值,即可以後方傳入指定的變數。 // _nc.call("milkmidi.FxRemoting.helloWorld", new Responder(onEventResult, onEventStatus),"Flash傳給.net的變數"); } public function onEventResult(e:*):void { trace("onEventResult result:" + e); //回傳的結果:可以得到從.net回傳的一個串字,酷。 } public function onEventStatus(e:*):void { trace(e); } } } import flash.display.Sprite; internal class DemoButton extends Sprite { public function DemoButton() { this.buttonMode = true; this.graphics.beginFill(0xffddee); this.graphics.drawRect(0, 0, 50, 20); this.graphics.endFill(); } }7.成功。
一些FlashAS3和C Sharp的比較心得
flash端使用package來將類別分開,
CSharp使用namespace
flash的類別需要放在和package一樣的路徑資料夾下
而CSharp不需要
flash使用var 變數: 型別 來宣告
CSharp使用 型別 變數 來宣告
CSharp類別可以有一樣的函式名稱, 只要傳入的參數不一樣即可
Flash則沒有這個功能。
SourceCodeDownload
因為本機在開發應用程式時, 會被flash的安全性檔掉, 所以要設定一下同意存取本機的程式。
先連到:
http://www.macromedia.com/support/documentation/tw/flashplayer/help/settings_manager.html
點選左邊選單的:全域安全性設定面板
此時右邊會出現一個flash設定管理員
下方的資訊應該是空的,點選右邊的編輯:
打上同意的路徑:看你的swf是放在那裡,就是路徑打上即可。
完成後如上圖,關掉Browser,重新發怖swf檔
留言
我要繼續學 >"<
1.透過FMS即可
2.這套Fluorine也有類似的功能, 理當應該是可以做到, 要查一下他的文件
請問想要學習Fluorine的話,
有沒有推薦的書籍、網站或任何資源?
我在網路上都查不到這方面的資訊,
除了老師提到的那個大陸網站之外,
但是那網頁速度很慢,並且是簡體字的,
若有其他的資源可否請老師提供,
謝謝您。
裡面的demo都還滿夠用的
再加上本機執行發怖有絕對的權限
要做到真正的安全性
還是要從加密下手會比較好
不然你這樣試試看。
把swf包在html裡,然後在http://localhost下開啟該.html試試,不要在cs3發怖裡測試。
我有按照上面步驟設定
.net能連到console.aspx正常顯示數據
不過as似乎無法跟.net溝通
(有畫面不過button按下去不會回傳string)
我是用vs2008+flex builder3
請問能提供一點意見嗎?
另外我有一個已經開發好的dll(build with vc6)請位fluorine有辦法透過flex直接呼叫dll的methods嗎?
第一步先試試console.aspx能不能正確的顯示
如果ok的話
到flash端在寫程式碼時, 看一下錯誤訊息
有這個訊息我也才知道問題是什麼
然後用console去看
如果有出現的話,那flash就可以呼叫
另外,我去梅問題大大的部落格有爬到這個
-----------------------------
var url:String="javascript:alert(\"trace:"+e+"\")";
navigateToURL(new URLRequest(url), "_self");
-----------------------------
這樣可以直接在開網頁的情況下alert出trace的內容唷!
http://docs.google.com/Doc?docid=0AalQdmAUzFX-ZGNqdGhza2hfMGRudDNqdmN0&hl=en
請問一下本機路徑是要怎麼找到?
現在正在做類似的專案,請大大幫忙 XDD
http://www.wretch.cc/album/show.php?i=ivy667944&b=3&f=1385755939&p=3
我把圖放在無名,希望大大可以幫忙,謝謝
我現在使用的是.NET3.5版本
請問是這個問題嗎?
我在VS內FluorineFx.dll查看
只有看到v1.1與v2.0
如果是這個問題的話
可能解決的辦法會是什麼?
謝謝
看要不要重新開一次專案
因為我在安裝時只有看見2008
.Netframework支援到3.5而已
如果要用2010是否就沒有辦法了?
Download FluorineFx v1.0.0.15 installer release.
安裝完後,按照網站上的步驟
要新增網站時,並沒有FluorineFx ASP.NET Web Site可以選擇
這是什麼原因呢??