2011年3月10日 星期四

讓 SWF Flash 檔可以使用本機的通訊端(local socket)

由於安全性的因素,Flash Player 預設不允許 SWF 檔開啟本機的通訊端(local sockets),假如 SWF 檔會開啟 socket 通訊,當你在 Flash 開發環境外(例如 Flash Professtional CS5)開啟這個 SWF 檔時,Flash Player 會跳出底下這個「SecurityError: Error #2010: 不允許含檔案系統的本機(Local-with-filesystem) SWF 檔案使用通訊端」的警告訊息:

image

如果你需要在 Flash 開發環境外跑 Flash SWF 檔,不希望 Flash 太緊張跳出上面的警告訊息,那麼你必須修改 Flash 的安全性設定。底下提供兩個修改方法:

方法一:修改 Flash 安全性設定
  1. 連到 Flash Security Settings 這個網頁,你會看到「Adobe Flash Player 設定管理員」這個 Flash 程式:
    image
  2. 在這個「Adobe Flash Player 設定管理員」中,選擇中間的「永遠允許」選項:
    image  
  3. 接著,點選「編輯...」下拉式選單,並選擇「新增...」:
    image
  4. 接著,點選「瀏覽資料夾...」並選擇你 SWF 檔所在的資料夾,或者也可以選擇整顆硬碟一勞永逸:
     image
    image 
方法二:把 SWF 檔編譯成 Flash 放映檔

當 SWF 檔案編譯成 Flash 放映檔後,Flash 影片就會略過安全性的檢查,讓你可以存取本機的通訊端(local sockets)。對大部份情況來說,這可能是最簡單的修改方法。

在 Flash Player 中,只要點選「檔案 > 產生放映檔...」就會產生一個 .exe 的 Flash 可執行檔。

image
▲ 把 SWF 檔編譯成 Flash 放映檔(.exe 執行檔)

延伸閱讀

0 意見: