Flex Yuva Windows verilerini göndermiyor

0 Cevap php

Gerçekten birileri bu ışık döken umuyoruz. Ben PHP ve Flex kullanarak gerçekten çok basit bir sohbet sunucusu / istemci inşa ediyorum. Ben birçok dersler takip ve Windows istemcisi kullanıyorsanız ben herhangi bir mesaj gönderemiyorum dışında, PHP bir çalışan sunucu ve Flex çalışan bir istemci sahibiz.

Benim Mac bir mesaj göndermek zaman sunucuya geçer ve bağlı olabilir herhangi bir Windows istemcisi dahil olmak üzere tüm müşterilerine, gönderilen alır. Mesajı gerçekten de Windows istemcileri üzerinde gösterecektir, ben bu işe yaramazsa o Windows gönderirken deneyin sadece bulunuyor.

Ben doğru bağlantı noktasını dinleyen bir PHP komut dosyası tarafından sunulan bir crossdomain.xml dosyayı ekleyerek denedim, ancak müşterilerin hiçbiri bunun için sormak gibi görünüyor, ve istemci Mac üzerinde çalışıyor eğer Windows üzerinde çalışması gerekir üstlendi. Arada ben (ki bir fark yapar bilmiyorum) bir AIR dosyası olarak projeyi ihraç ediyorum.

Ben bir yerde aptal oluyorum ya da Windows istemcileri için bazı özel tedbirler alır gerek olup olmadığını ben merak ediyorum bu konu ile ilgili bir şey bulamıyorum?

(Ben Yığın taşması gönderilen asla mümkünse yüzden, kod biçimlendirme eksikliği için özür dilerim kimse bunu düzeltmek için nasıl açıklayabilir?) Aşağıda benim istemci kodu yapıştırılır var.

    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import flash.events.MouseEvent;
    import flash.events.ProgressEvent;
    import flash.events.SecurityErrorEvent;
    import flash.net.Socket;

    public var socket:Socket;

    // Run on windowComplete
    protected function init():void {
      btnConnect.addEventListener(MouseEvent.CLICK, onBtnConnectClick);
    }

    // Run on closing
    protected function deinit():void {
      if ( (socket != null) && (socket.connected) ) {
        socket.close();
      }
    }

    // Called when the "Connect" button is clicked
    protected function onBtnConnectClick(e:MouseEvent):void {
      if (txtServer.text != '') {
        socket = new Socket();

        socket.addEventListener(Event.CONNECT, onSocketConnect);
        socket.addEventListener(ProgressEvent.SOCKET_DATA, onSocketDataProgress);
        socket.addEventListener(IOErrorEvent.IO_ERROR, onSocketIOError);
        socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSocketSecurityError);

        socket.connect(txtServer.text, new uint(txtPort.text));
        btnSend.addEventListener(MouseEvent.CLICK, onBtnSendClick);
      }
    }

    // Called when the "Send" button is clicked
    protected function onBtnSendClick(e:MouseEvent):void {
      if (txtChatMessage.text != '') {
        txtChatWindow.text += 'You: '+ txtChatMessage.text +"\n";
        socket.writeUTFBytes(txtUsername.text +': '+ txtChatMessage.text);
      }

      txtChatMessage.text = '';
    }

    // Called when the socket is connected
    protected function onSocketConnect(e:Event):void {
      txtChatWindow.text += 'Connected\n\n';
      btnConnect.label = "Disconnect";

      btnConnect.removeEventListener(MouseEvent.CLICK, onBtnConnectClick);
      btnConnect.addEventListener(MouseEvent.CLICK, onSocketDisconnect);
    }

    // Called when the socket recieves data
    protected function onSocketDataProgress(e:ProgressEvent):void {
      var data:String = socket.readUTFBytes(socket.bytesAvailable);

      txtChatWindow.text += data +"\n";
    }

    // Called when there is an IO Error on the socket
    protected function onSocketIOError(e:IOErrorEvent):void {
      txtChatWindow.text += e.text;
    }

    // Called when there is a security error on the socket
    protected function onSocketSecurityError(e:SecurityErrorEvent):void {
      txtChatWindow.text += e.text;
    }

    // Called when the "Disconnect" button is clicked
    protected function onSocketDisconnect(e:MouseEvent):void {
      if ( (socket != null) && (socket.connected) ) {
        socket.close();
      }

      btnConnect.label = "Connect";
      btnConnect.addEventListener(MouseEvent.CLICK, onBtnConnectClick);
    }

0 Cevap