AXZ博客
给你海洋的知识 AXZLK.COM!

易语言客户发送数据失败怎么办(短信猫发送短信失败)

型 这是三个典型的网络控件,写网络程序必不可少。 要通过网络交换数据,首先要了解“连接”和“无连接”的概念。 最简单的例子是电话和信件。 如果两个人要通话,首先要建立连接——即拨号码,等对方接听后才能互相传递信息,最后释放连接——挂机打电话。 写一封信并没有那么复杂。 填写好地址和姓名后,扔进邮箱,收件人就会收到。 与数据报控件的数据交互类似于写信,是建立在“无联系”的基础上的; 与客户端和服务器的数据交互类似于打电话,基于“连接”。 根据提供的服务类型不同,端口分为两种,一种是TCP端口,一种是UDP端口。 计算机之间进行通信时,有两种方式:一种是发送后忽略,不确认信息是否到达。 本方法多采用UDP协议离婚协议模板免费下载离婚协议模板下载离婚协议模板免费下载模板合作伙伴协议下载渠道分发协议免费下载(我们熟悉的OICQ就是采用这种协议); 一种是发送信息后确认信息是否到达,即有响应方式,多采用TCP协议。 (这两种交互方式类似于生活中写信和打电话。)在易语言中,UDP协议封装了数据报控件,TCP协议封装了客户端控件和服务器控件。

Ⅰ-Datagram ———————— Datagram是一种不可靠的、小容量的网络数据交互方式。 如果传递的数据量太大,可能会失败。 最好不要超过 127 个字节。 如果需要大数据量或可靠的数据传输方法,请使用其他基于连接的网络组件(例如客户端、服务器)。 虽然数据报控件传输的数据量较小,可靠性不够,但它简单易用,在对数据量和可靠性没有特殊要求的情况下,仍有可以充分发挥作用的地方。 最后我会用这个控件做一个网络聊天程序(数据报版)作为例程。 数据报的重要属性是:端口。 数据报的重要方法有:send data()、retrieve data()。 数据报的重要事件是:数据到达。 1. 数据报的重要属性Port port属性是一个整数值,默认值为19730,如果要改变,尽量取大于1024的大值。Port是一个很重要的概念。 首先要明白,我们这里所说的端口并不是计算机硬件的I/O端口,而是软件概念中的端口。 服务器可以对外提供多种服务。 例如,一台服务器可以同时是WEB服务器或FTP服务器。 同时,它也可以作为邮件服务器。 为什么一台服务器可以同时提供这么多服务呢? 其中最重要的一个方面就是各种服务使用不同的“端口”来提供不同的服务,比如:HTTP(超文本传输​​)使用80端口,FTP(文件传输)使用21端口,Telnet(远程登录)使用23端口, POP3(邮件接收)使用110端口,SMTP(简单邮件传输)使用25端口,DNS(域名解析服务)使用53端口等。

短信猫发送短信失败_易语言客户发送数据失败怎么办_发送验证邮件失败

这样,计算机通过不同的端口与外界通信,互不干扰。 可以说,端口就是计算机与外界通信的途径。 没有它,计算机将聋哑。 如果把电脑比作餐厅,端口就是卖饭菜的窗口。 我们都知道,大多数餐厅的橱窗都有详细的分工。 想买馒头,在卖鸡蛋汤的窗口肯定买不到。 如果你想和在餐厅工作的MM见面聊天,你应该走哪个窗口? 卖汤、卖菜、卖馒头的窗户显然不现实。 好在“大”的电脑餐厅,窗户不少,而且大多不常用。 随便找一个(当然要避开卖汤菜卖包子的橱窗)就可以和MM交流了。 计算机中共有256×256即65536个端口(编号从0到65535),其中前1024个端口有确切的定义,对应于Internet上的一些常见服务。 1024号以后的端口是预留给应用程序使用的,可以随意选择(易语言限制在32767以下)。 这也提醒我们,在为数据报控件(包括以后的客户端和服务器控件)指定端口属性时,尽量取较大的值,以免发生冲突。 [注:其实端口并不是特别重要,发送数据的一方和接收数据的一方知道对方的端口即可。 就像餐厅外面的GG遇到餐厅里面的MM。 他们从哪个窗口相遇并不重要,重要的是他们去的是同一个窗口。

] 二、数据报的重要方法 发送数据函数:向指定主机上的指定端口发送数据。 语法:数据报名.发送数据([接收主机地址],接收主机端口号,要发送的数据) 参数:接收主机地址——文本类型,可以是主机名,IP地址等。如果省略此参数或提供空文本,要发送的数据将在指定端口上广播。 接收主机端口号——整数类型,必须是对方(接收主机)数据报控件的端口属性指定的值。 待发送数据——待发送数据可以是文本、整数、小数、逻辑、日期和时间等(数据类型不限)。 返回值:逻辑类型。 如果数据发送成功,则返回true; 如果失败,则返回 false。 应用示例: 1.数据报1.发送数据(127.0.0.1,19730,123) 2.数据报1.发送数据("liigo",19730,"易语言")//例1:到IP地址127.0.0.1主机端口19730发送整数数据123; //示例2:向名为“liigo”的主机的19730端口发送文本数据“易语言”; //通过语法介绍和应用实例我们看到,要向对方发送数据,需要指定对方的主机地址和端口号。 这有点像写信要写明收件人的地址和收件人的姓名(不写或写错了就不会寄出)。 也许你还要问易语言客户发送数据失败怎么办,数据是发给谁的? 答:在另一个程序中发送给另一个数据报控件。 该程序必须在指定的主机上运行(IP 地址为 127.0.0.1,或主机名为“liigo”)。 此数据报控件的端口属性必须是指定值 (19730)。

短信猫发送短信失败_发送验证邮件失败_易语言客户发送数据失败怎么办

如果没有符合条件的收件人,自然就没有人会收到数据——这类似于写一封信。 [注意:该方法的逻辑返回值只标记“发送”数据是否成功,与数据能否成功“到达”无关。 实际上,数据报控件只是发送数据,而不询问数据是否到达。 这就是前面提到的它的“不可靠”。 ] 检索数据函数:检索数据报控件接收到的数据。 语法:数据报名称。 Retrieve data()返回值:字节集类型。 注意是字节集类型,使用时经常需要进行数据类型转换。 应用示例: 1. x=datagram 1. Retrieve data()//取出数据存入字节集类型变量x编辑框 1. Content = convert from byte set (x, #text type)/ /显示到编辑框1//《从字节集转换(x,#text类型)》表同志近三年实战表现,材料易语言客户发送数据失败怎么办,材料,招投标技术打分表,图表和交易pdf眼图打印pdf用图表说话pdf表示将字节集变量x转换为文本类型(第二个参数“#text type”指定目标数据类型,“#text type”为易语言系统定义的常量)。 //[注意:你可能对“to text()”函数非常熟悉,但它只能将整数、逻辑、日期和时间类型转换为文本类型,不能将字节集类型转换。 字节集是一种特殊的数据类型,易语言为其提供了类型转换函数“convert from byte set()”和“convert to byte set()”。

]//上面的例子也可以写成一行:“编辑框1.Content = Convert from byte set(datagram 1.Retrieve data(),#text type)”。 //注意“获取数据”方法只能在数据报控件的“数据到达”事件的处理子程序中调用。 即使在其他地方调用,也无法获取到正确的数据。 【补充:你可能会疑惑,为什么一定要返回一个byte-set的值呢? 使用的时候多了一个转换步骤,直接返回文本类型就好了! 答:因为在所有数据类型中,只有字节集类型是最通用的。 例如,如果要传输图片数据,除字节集外,其他数据类型都不适合。 ] 3. 数据报的重要事件 数据到达事件的时机:当数据到达时自动产生该事件。 在这个事件的处理子程序中,最重要的任务之一就是检索“到达的数据”——通过“retrieve data()”方法。 再次提醒大家,“retrieve data()”返回的是byte set类型的数据,通常需要使用数据类型转换函数“convert from byte set()”将byte set数据转换为其他数据类型(最常用的数据类型无疑是文本)。 我编写了一个使用数据报控件进行网络聊天的程序。在已连接到网络的任意两台机器上运行该程序,并指定对

在另一台机器的 IP 地址或主机名之后,您可以互相交谈。 (如果在单机测试,会收到自己发的信息。) Ⅱ-Client,Server———————— — ———- 客户端控件和服务器控件是一对很好的组合。 它们总是成对使用,在两个独立的应用程序中,一个充当客户端,一个充当服务器。 客户端的应用程序总是向服务器端提出服务请求,服务器端的应用程序根据客户端的请求提供服务。 可以说客户端是主动方,服务器端是被动方。 (当然,也可以在一个应用程序中同时使用客户端控件和服务器控件,使其既充当客户端又充当服务器。)你可能听说过(甚至用过)国内著名的木马——冰川,这是一个典型的客户端服务器软件。 该软件实际上是两个程序(一个客户端和一个服务器)。 服务器通过各种方式运行在被监控机器上后,客户端就可以向服务器程序发送指令,从而对对方进行操作。 机器的目的。 我最终将提供一个用简单的语言编写的简单的类似例程。 不要直接将客户端服务器软件与黑客和特洛伊木马联系起来。 它还具有许多“正义”用途。 你在电视上见过老板在办公室里在家里操作电脑吗? 他用的软件是client-server软件,这能叫木马吗? 他的操作是黑客攻击吗? 明显不是。

发送验证邮件失败_短信猫发送短信失败_易语言客户发送数据失败怎么办

(他用的软件可能是大家熟知的木马,但这至少说明了木马不一定是黑客破坏的工具,但也能造福于人,可以用来杀人,但是柜子师傅可以用来做菜,刀本身没有错。) 1. 客户的重要属性 客户控件没有重要属性。 二、客户连接函数的重要方法:连接到指定主机上的指定端口。 语法:客户端名称.connect(服务器地址,服务器端口号) 参数:服务器地址——文本类型,可以是主机名或IP地址; 服务器端口号——整数类型,由服务器控件的端口属性指定的值。 应用实例: 1. Client 1. Connection (110.0.0.1, 19730)//连接IP地址为110.0.0.1的上位机中的服务器控件。 服务器控件的属性必须是19730,并且所在的程序正在运行,否则不能连接成功。 注意:同时一个客户端控件只能连接一个服务器控件; 服务器控件可以同时连接到多个客户端控件。 断开连接功能:断开与服务器的连接。 语法:客户名称。 Disconnect() 应用示例: 1. Client 1. Disconnect() 发送数据功能:向已建立连接的服务器控件发送数据。 语法:客户名称。 发送数据(data)参数可以是各种类型的数据。 应用示例: 1.客户端1.发送数据(0) 2.客户端1.发送数据(编辑框1.内容) 3.客户端1.发送数据(图片框1.图片) //发送整数和文本到服务器分别,字节集数据。

【注意:发送数据前必须与服务器控件正确建立连接。 就像给朋友打电话,你要先广播号码,等朋友接了再说话——如果你不拨号码,或者那边的朋友还没拿起话筒,你就开始说话,是不是是白来的吗? ] 检索数据功能:检索服务器发送的数据。 语法:客户名称。 Retrieve data() 该方法返回字节集数据。 在使用过程中可能需要进行数据类型转换(使用“convert from byte set()”函数),这与数据报控件的“检索数据”方法完全一致。 3.客户端重要事件数据到达。 服务器发送数据后产生该事件。 本次接收到的数据可以通过调用本次事件处理子程序中的“retrieve data()”方法进行检索。 Connection Disconnected 当连接被服务器断开时,将生成此事件。 连接断开后,除非重新建立连接,否则无法继续发送数据。 〓★〓客户端与服务器的交互: 1.首先,客户端控件与服务器控件建立连接(通过调用“connect()”方法),然后服务器控件产生一个“客户端进入”事件,并获得客户端地址(通过调用“RetrieveCustomer()”方法)。 之后,双方就可以互相发送和接收数据了。 2、客户端和服务器控件都可以在连接断开前随时调用“发送数据()”方法向对方发送数据,对方此时产生“数据到达”事件。 在“数据到达”事件中调用“retrieve data()”方法获取对方发送的数据。

易语言客户发送数据失败怎么办_短信猫发送短信失败_发送验证邮件失败

3、客户端控件可以调用“disconnect()”方法与服务器控件断开连接,此时服务器控件产生“客户端离开”事件; 服务器控件可以调用“disconnect client()”方法断开与客户端控件的连接,此时客户端控件产生“连接断开”事件。 1.服务器端口重要属性是整型,指定监控数据到达的端口号,可以是任意大于0小于32767的自定义值。 1024.) 其含义类似于数据报控件的同名属性。 二、服务器获取客户端函数的重要方法:获取连接到服务器的客户端地址。 语法:server name.Retrieve client() 该方法返回一个文本值,其中记录了客户端的地址(IP地址和端口)。 服务器控件向客户端发送数据或断开客户端连接时需要指定该地址。 应用示例: 1. Client address = server 1. Retrieve client//检索客户端的地址,保存在文本变量“customer address”中。 “客户地址”应事先定义为全局变量或程序集变量,以供其他子程序使用。 [注:该方法通常在服务器控件的“客户端进入”或“客户端退出”(尤其是“客户端进入”)事件的处理子程序中被调用。 ] 检索数据功能:检索客户发送的数据。 语法:服务器名称。 Retrieve data() 返回值是一个字节集。 发送数据功能:向指定客户发送数据。 语法:服务器名称。 send data(receive client, data, [最大等待时间]) 参数:client address – 文本类型,必须是调用“retrieve client”方法得到的客户端地址。

数据 – 可以是多种类型。 最长等待时间——指定等待发送成功的最长时间,以秒为单位。 如果省略该参数,则默认为无限等待。 应用实例: 1. Server 1. Send data(client address, 123,)//发送整数数据123到。 这里的“客户地址”是前面调用“retrieve customer()”时的返回值。 断开客户端功能:断开与指定客户端的连接。 语法:server name.disconnect client(断开客户端) 参数必须是调用“retrieve client()”方法返回的客户端地址文本。 应用示例: 1. Server 1. Disconnect client (client address)//断开与“client address”指定的客户端的连接。 这里的“客户地址”是前面调用“retrieve customer()”时的返回值。 3、服务器重要事件数据到达。 服务器发送数据后产生该事件。 本次接收到的数据可以通过调用本次事件处理子程序中的“retrieve data()”方法进行检索。 Client Entry 当新的客户端连接到服务器控件时,会生成此事件。 该事件的事件处理子程序的一个重要任务是调用“retrieve customer()”方法获取新客户的地址,并保存到文本类型的全局变量或程序集变量中供以后使用(服务器控件的“send data()”和“disconnect client()”方法都需要指定客户端的地址)。 客户端离开 当连接的客户端与服务器组件断开连接时,将生成此事件。 在该事件的处理子程序中调用“Retrieve Client”方法可以获取到该客户端的地址(IP地址和端口)。

客户端与服务器的关系:一般情况下,客户端是指令的发起者和发布者; 服务器是指令的被动者和执行者。 仍以“木马”为例:服务端潜伏在某台机器中,随时等待客户端与其建立连接。 连接成功后,客户端向服务端发送指令(“发送数据”),服务端收到指令后执行相关程序语句,然后将执行结果发送给客户端,即完成一次交互。 我将为您提供三个例程。 第一个例程是一个简单的网络聊天程序(客户端服务器版),演示了客户端与服务器端最基本的交互; 第二个例程是“木马”原型,演示如何制作木马程序。 第三个例程是“网友”——一个将例程2的客户端和服务端合二为一的网络通讯程序。 程序既可以是客户端也可以是服务器(方便双向通信),功能全面扩展了前两个例程的功能,可以互相聊天,互相发送文件和图片,截取对方屏幕,在对方机器上弹出信息框(如:严重警告!你的机器已被屏蔽)我黑了! 哈哈。。。),也可以互相关机或者重启对方的机器。

赞(0)
未经允许不得转载:AXZ博客 » 易语言客户发送数据失败怎么办(短信猫发送短信失败)
分享到

评论 抢沙发

登录

找回密码

注册