嗯,在24小時內有三個問題。但是我想缺少任何有用的文檔(我可以找到)讓我別無選擇。C++服務器無法識別AS3套接字
現在我知道所有關於adobes安全性的東西了,政策文件處理和沙盒限制必須被玩弄。我完成了建議的選項更改,允許我的AS3項目訪問網絡。我的服務器準備好在連接時立即吐出策略文件;但問題是閃光/ AS3無論你想打電話它只是沒有看到我的服務器(或其他方式)
AS3延遲幾秒鐘,就像文檔說,如果它的努力,將建立連接/找到策略文件,但它永遠不會建立連接期,嘗試一段時間,然後放棄並吐出一個訪問錯誤(因爲它沒有找到該策略文件,它認爲它不允許在網絡上使它發瘋在我嘗試......律頑固的穢語)
Flash從來沒有得到它的期待,我的服務器從來沒有檢測到任何連接(失敗或成功,沒有)我知道我的服務器是好的,因爲我已經測試它與我用C++編寫的測試客戶端,他們像最好的朋友一樣說話。我想在AS3中重新創建winsock類,但我甚至不知道winsock的connect()函數是如何工作的;我得到了這個聲明,沒有我能找到的定義。
我不確定你真的需要從我的源代碼中得到什麼,但是單獨在客戶端上面有超過1000行,所以發佈它並不是一個真正的選擇。生病給我在這裏,至少我認爲是相關的。
function hwndEnterFrame(e:Event):void
{
//trace("Frame Entered");
if (firstframe)
{
trace("try to reconcile policy file...");
//Security.loadPolicyFile("192.168.1.2:843");
TSocket = new Socket("192.168.1.2",843);//must call flush() to send data***
firstframe = false;
}
調用Security.loadPolicyFile似乎並不遠香港專業教育學院發現做任何事情,我會得到相同的封郵件有或沒有它,代碼似乎是在尋找在插座聲明中指定的位置策略文件。一切都編譯好,它只是沒有做我想做的事情:P其他人似乎正在寫他們的服務器在Perl或Python我還沒有找到豐富的C++材料,儘管從我所瞭解的TCP是一個支持它的任何平臺之間的通用連接(可跨語言,無需任何有趣的業務)
meh,那我現在得到了,如果你想要代碼的其他部分(客戶端或服務器端,無論你想要的)生病在這裏快速地堅持下去。
編輯:
我發現一個swf網上說我下載,它連接罰款與它附帶的示例服務器(而該服務器是用C編寫sparp所以它沒多大用的我),但它不會連接到我的服務器。所以一個已知好的Flash客戶端WONT連接到我的C++服務器,但一個C++客戶端將連接到我的C++服務器。因此,它明顯在服務器端的東西,因爲它聽到任何從閃存應用程序(我的或expamle一)的任何連接
乾杯; -Tyler