【问题标题】:Argument count mismatch on flash.net::Socket/connect()flash.net::Socket/connect() 上的参数计数不匹配
【发布时间】:2011-12-03 14:55:06
【问题描述】:

您好,我收到此错误“ArgumentError:错误 #1063:flash.net::Socket/connect() 上的参数计数不匹配。预期为 2,得到 0。”。

我创建了一个 .net tcp 服务器,它在读取文件时发送 1 个字节的数据,现在 flash 客户端连接但我收到此错误并且我根本没有收到任何数据。

为什么会出现这个错误?

感谢您提前回复。

这是闪存代码

import flash.net.Socket


var socket = new Socket("localhost",8888);
socket.connect();
socket.addEventListener(Event.CONNECT, connectHandler);
socket.addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);


function connectHandler(evt:Event) {
    trace("connectHandler: " + evt);
}

function socketDataHandler(evt:ProgressEvent) {
trace("socketDataHandler: " + evt);
}

使用 .net 发送数据的代码是

While True

            Dim netStream As NetworkStream = Me._socket.GetStream

            Dim bytes(1) As Byte

            Dim file As New FileInfo("so-deep.ram2000.mp3")
            Dim inputStream As Stream = file.OpenRead
            Dim length As Integer = file.Length
            'Dim os As New System.IO.FileStream(file.FullName, IO.FileMode.Create)

            Dim bb As Byte
            While length > 0 AndAlso inputStream.Read(bytes, 0, bytes.Length) > -1

                netStream.Write(bytes, 0, bytes.Length)

                length -= bytes.Length

            End While



        End While

【问题讨论】:

    标签: .net vb.net flash tcp


    【解决方案1】:

    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/Socket.html#connect%28%29

    如果没有给定主机地址和端口,套接字很难连接到主机。 :)

    正确设置connect函数的两个参数。

    public function connect(host:String, port:int):void
    

    编辑:有趣,再看一遍,它应该捕捉到套接字构造函数的设置......似乎有人更改了你版本的 flash 中的函数定义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-26
      • 1970-01-01
      • 2011-02-10
      • 1970-01-01
      • 2017-12-31
      • 2012-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多