2009-08-06 48 views
1

我有一個基於Flex的SWF,它加載了基於2-AS SWF,然後,通過一個LocalConnection談判進一步的活動。 有時,AS 2-swf可以請求基於flex的swf加載電影。 我已經安排通過(釋放){}功能。爲什麼我的SWF使Flash播放器崩潰

的AS 2-SWF,我正在做的沙沙最大。在Swish中,當我在文本字段上設置(釋放)(在我的localconnection上調用.send())時,它的工作非常出色。但是,當我嘗試對附加到動畫片段的on(發行版)執行相同的調用時,實際上會導致Flash播放器甚至瀏覽器插件崩潰。實際上,瀏覽器(IE)也崩潰了。

我檢查調試跟蹤,IE瀏覽器問我發送給微軟在最後IE崩潰,我注意到嵌入跟蹤深StackOverflow的一個例外,但我不能確定它的來源。

你能幫我理解這裏發生了什麼嗎?

+0

我不知道,但我已經遇到了一些崩潰,我認爲可能是太有關的LocalConnection。我有興趣聽到結果。 – 2009-08-06 13:16:26

回答

1

你有多個LocalConnection連接到同一個通道嗎?這會導致瀏覽器崩潰。

+0

那麼爲什麼它不一致呢? – Irwin 2009-08-15 13:19:38

+1

通常,如果您打開連接,然後嘗試再次打開相同的連接,則會導致瀏覽器崩潰。如果您嘗試再次打開相同的連接,它可以工作,因爲原始對象被有效「銷燬」。此外,有時Flash的垃圾收集將「清理」LocalConnection,因爲它不再在內存中引用,在這種情況下,連接將調用「close()」,即使它沒有明確關閉。 – cwallenpoole 2009-08-18 14:09:24

0

你在同一時間發送大量請求,這將使其崩潰,有的瀏覽器是爲那些事情比其他更敏感。

+0

您是否在MovieClip中包含一些附加代碼(包含on(release)),這可能會導致崩潰?評論發送請求的代碼?它現在是否崩潰? – elslooo 2009-08-19 10:15:05

0

這是錯誤的方式來調試您的應用程序。改用Flex Builder的調試工具。你往往把責任歸於LocalConnection,因爲它是操作中最複雜的部分,當它可能很容易成爲一個無限循環。

你似乎也沒有使用正確的工具。我會信任FF的FireBug,而不是IE的轉儲。此外,在我們能夠準確地告訴你什麼是錯誤之前,我們需要看到更多的代碼。

0

你確定這次崩潰不僅在你的電腦?嘗試運行FlashUtil ??.exe在\ WINDOWS \ system32 \ Macromed \ Flash \中修復/更新Flash安裝。有一些已知的問題會破壞Flash安裝,因此在使用某些對象時會變得不穩定。