rip

阅读 / 问答 / 标签

RIP路由表协议中水平分割的工作原理与作用是什么?

原理:在路由信息传送过程中,不再把路由信息发送到接收到此路由信息的接口上。从而在一定程度上避免了环路的产生。主要应用于广播网,非广播型的一般会关闭。否则形成环路要TTL=0后才丢弃。路由中要极力避免这种现象。例如A连接B,B连接C,C连接A,当A发送路由给B是,B会记录这条路由是A发送的,不会再发给A,这样可以避免,当A相连的这个路由异常撤销前B再发这个路由信息而形成环路。但是无法避免B给C,C在给A的情况。通过原理也容易分析最主要的作用就是路由环路避免了。RIP了解后在看看OSPF,ISIS等比较理解更容易理解

什么是PPP、RIP或OSPF动态路由技术?

路由可以分为三类:静态路由协议,距离矢量路由协议(如RIP,EIGRP),链路状态路由协议(如OSPF、ISIS)。后两种又统称为动态路由协议。分析:静态路由协议:静态路由协议是通过人工手动将路由信息添加到路由表,写进路由表的信息只能手动删除,缺点很明显,如果网络很大,工作量就很大,而且操作起来准确性很难保证。因为路由条目为手动添加手动删除,这就给网络管理带来很多不便。优点:1、度量值小,做网络策略的时候经常用到。在特定的网络环境下,静态路由的应用也很普遍。2、可用作填充默认路由,很方便,也很简单。3、不需要与邻居建立连接,所以会节省路由器资源。距离矢量路由协议:原理、在每台路由器的接口上启动协议进程,每台路由器将自己的路由信息告诉自己的所有邻居,邻居再将自己的路由信息告诉邻居的邻居,以此类推,直到全网收敛。优点:不用手动配置,路由器可以自动维护和学习路由表,在中小型网络中应用普遍。缺点:每台路由器只能从邻居了解路由信息,很容易产生环路。学习和维护路由表的数据包会占用一定链路带宽和路由器资源。链路状态路由协议:每台路由器在接口启动一个进程,通过路由器之间同步一些参数,使每台路由器能够自己运算出网络拓扑,从而做出最佳选路。相当于每台路由器都有一张网络的地图。优点:不会产生环路,在大型网络中收敛速度比其他的协议快,自动学习和维护路由表。缺点:和优点比起来就显得微不足道了。不论哪一种路由协议,在特定的网络环境中都有其各自的优缺点,没有好坏之分,要根据网络环境做出最恰当的选择。

路由协议中RIP和OSPF的区别

rip协议是距离矢量路由选择协议,它选择路由的度量标准(metric)是跳数,最大跳数是15跳,如果大于15跳,它就会丢弃数据包。 ospf协议是链路状态路由选择协议,它选择路由的度量标准是带宽,延迟。 RIP的局限性在大型网络中使用所产生的问题: RIP的15跳限制,超过15跳的路由被认为不可达 RIP不能支持可变长子网掩码(VLSM),导致IP地址分配的低效率 周期性广播整个路由表,在低速链路及广域网云中应用将产生很大问题 收敛速度慢于OSPF,在大型网络中收敛时间需要几分钟 RIP没有网络延迟和链路开销的概念,路由选路基于跳数。拥有较少跳数的路由总是被选为最佳路由即使较长的路径有低的延迟和开销 RIP没有区域的概念,不能在任意比特位进行路由汇总 一些增强的功能被引入RIP的新版本RIPv2中,RIPv2支持VLSM,认证以及组播更新。但RIPv2的跳数限制以及慢收敛使它仍然不适用于大型网络相比RIP而言,OSPF更适合用于大型网络: 没有跳数的限制 支持可变长子网掩码(VLSM) 使用组播发送链路状态更新,在链路状态变化时使用触发更新,提高了带宽的利用率 收敛速度快 具有认证功能OSPF协议主要优点:1、OSPF是真正的LOOP- FREE(无路由自环)路由协议。源自其算法本身的优点。(链路状态及最短路径树算法)2、OSPF收敛速度快:能够在最短的时间内将路由变化传递到整个自治系统。3、提出区域(area)划分的概念,将自治系统划分为不同区域后,通过区域之间的对路由信息的摘要,大大减少了需传递的路由信息数量。也使得路由信息不会随网络规模的扩大而急剧膨胀。4、将协议自身的开销控制到最小。见下:1)用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。包含路由信息的报文时是触发更新的机制。(有路由变化时才会发送)。但为了增强协议的健壮性,每1800秒全部重发一次。2)在广播网络中,使用组播地址(而非广播)发送报文,减少对其它不运行ospf 的网络设备的干扰。3)在各类可以多址访问的网络中(广播,NBMA),通过选举DR,使同网段的路由器之间的路由交换(同步)次数由 O(N*N)次减少为 O (N)次。4)提出STUB区域的概念,使得STUB区域内不再传播引入的ASE路由。5)在ABR(区域边界路由器)上支持路由聚合,进一步减少区域间的路由信息传递。6)在点到点接口类型中,通过配置按需播号属性(OSPF over On Demand Circuits),使得ospf不再定时发送hello报文及定期更新路由信息。只在网络拓扑真正变化时才发送更新信息。5、通过严格划分路由的级别(共分四极),提供更可信的路由选择。6、良好的安全性,ospf支持基于接口的明文及md5 验证。7、OSPF适应各种规模的网络,最多可达数千台。OSPF的缺点1、配置相对复杂。由于网络区域划分和网络属性的复杂性,需要网络分析员有较高的网络知识水平才能配置和管理OSPF网络。2、路由负载均衡能力较弱。OSPF虽然能根据接口的速率、连接可靠性等信息,自动生成接口路由优先级,但通往同一目的的不同优先级路由,OSPF只选择优先级较高的转发,不同优先级的路由,不能实现负载分担。只有相同优先级的,才能达到负载均衡的目的,不象EIGRP那样可以根据优先级不同,自动匹配流量。

RIP协议、OSPF协议采用什么算法?

rip是距离矢量算法ospf是spf算法

RIP协议、OSPF协议采用什么算法

给你一点资料NSSA原理简介众所周知,OSPF路由协议是目前因特网中应用最为广泛一种IGP,而NSSA则是在该协议发展过程中产生的一种新的属性,她的英文全称是”not-so-stubby” area,一个充满了幽默味道的名字。要想了解该属性的特征,我们先从路由协议的发展历程讲起。1.2 从D-V算法到链路状态算法RIP作为最古老的动态路由协议,使用D-V算法来计算路由。由于当时的网络环境非常简单,所以RIP协议的设计思想也是简洁为本,只求完成最基本的功能。这样在RIP应用于大型拓扑复杂的网络时,就会出现效率不高、收敛慢、路由自环等问题。其中尤以路由自环的危害最大。此时必须有新的路由协议来适应日益复杂的网络,而且新的路由协议必须要解决RIP遇到的所有问题。由于D-V算法对网络的理解是基于“平面的”——在运行RIP协议的路由器眼中,网络仅仅是由一个个直连的邻居和一条条由邻居通告的路由组成。这样在网络拓扑变化时难免会导致计算错误,产生自环。为了彻底解决这个问题,一种全新的算法——链路状态算法应运而生。该算法从“立体”的角度来看待网络,每一台路由器都理解全局网络的拓扑结构,并依据此来计算路由,由于每台路由器对网络的整体情况“一切尽在掌握”,所以自环的问题被这彻底的解决。1.3 OSPF协议与区域基于链路状态算法的OSPF协议虽然彻底的解决了路由自环问题,但这种算法本身也有很多固有的缺陷:耗费更多内存资源:每台路由器都必须保存整个网络的拓扑结构(以LSDB的形态)耗费更多CPU资源:该算法的路由计算使用SPF算法,较D-V算法要复杂的多。计算更为频繁:只要网络中有任何一台路由器的拓扑方生变化,会导致网络中所有的路由器进行SPF计算,而且每台路由器都是将SPF算法重新执行一遍,以便找出变化的路由。而且,无论是D-V算法还是链路状态的路由协议都存在如下缺陷:没有从协议本身反映出网络的层次结构。因为实际应用中的一个网络是由各种级别的路由器组成的,有核心层的骨干路由器、汇聚层的高端路由器、接入层的低端路由器。这些路由器承担的任务不同,处理性能也不一样。但在路由协议中,所有的路由器都要完成几乎是相同的工作:发送已知的路由给邻居路由器,根据从邻居路由器获得的路由信息计算本地路由表。虽然每台路由器的接口数量不同,但最终计算得来的路由表的规模基本是一样的。为了彻底解决上述问题,OSPF提出了区域的概念(AREA),区域是将所有运行OSPF 的路由器人为的分成不同的组,以区域id来标示。在区域内路由计算的方法不变,由于划分区域之后,每个区域内的路由器不会很多,所有上述缺陷表现得并不严重,带来的后果可以忽略不计。而在区域之间计算路由时采用D-V算法,这样三个缺点就被成功的规避了。实际上区域概念的提出意义远不只这些,在划分为区域之后:网络的拓扑结构就与路由协议之间存在了一种对应关系,核心和高端的路由器由于处理能力强,可以规划在骨干区域之中。因为骨干区域的路由器要承担更多的路由计算任务。每个单独的区域实际上就是一个独立于网络中其他区域的系统,可以在不同的区域中试行不同的路由策略,使组网规划更为灵活方便。实际上OSPF 协议在当今的网络中广为流行,不是因为她使用了无环路的链路状态算法,而是因为她提出了区域的概念!1.4 STUB区域STUB区域就是一个对区域概念的最典型的应用。STUB区域的设计思想在于:在划分了区域之后,非骨干区域中的路由器对于区域外的路由,一定要通过ABR(区域边界路由器)来转发,或者说对于区域内的路由器来说ABR是一个通往外部世界的必经之路。既然如此,对于区域内的路由器来说,就没有必要知道通往外部世界的详细的路由了,代之以由ABR向该区域发布一条缺省路由来指导报文的发送。这样在区域内的路由器中就只有为数不多的区域内路由和一条指向ABR的缺省路由。而且无论区域外的路由如何变化,都不会影响到区域内路由器的路由表。由于区域内的路由器通常是由一些处理能力有限的低端路由器组成,所以处于STUB区域内的这些低端设备既不需要保存庞大的路由表,也不需要经常性的进行路由计算。有了STUB属性之后,网络的规划更符合实际的设备特点。以上描述的只是STUB区域的设计思想,在协议文本中,对STUB区域的精确定义是:STUB区域一定是非骨干区域和非转换区域(可以配置虚连接的区域),并且在该区域中不可传递Type 5类型的LSA。 因为协议的设计者认为路由表中的绝大部分路由均是来自自治系统外部的引入的路由。(由于OSPF是链路状态算法的路由协议,LSA就是用来描述网络拓扑结构的一种数据结构。在OSPF 中将LSA分为5类:type1、2两种用来描述区域内的路由信息;type3用来描述区域间的路由信息;type4、5用来描述自治系统外部的路由信息。)需要注意的是定义中对于过滤TYPE5类型的LSA使用的描述语言是“不可传递”,这就意味着不仅区域外的ASE(自治系统外部)路由无法传递到STUB 区域中,同时STUB区域内部的ASE路由也无法传递到本区域之外。换一句更通俗的话来描述:STUB区域内的路由器都不可引入任何外部的路由(包括静态路由)。这样的定义未免太过严厉了。因为在实际的组网中,并不是所有的设备都会运行OSPF协议。例如:用户拨号上网时使用的接入服务器就需要连接路由器上因特网,但通常接入服务器上并不支持(也不需要)OSPF协议,而是通过配置静态路由实现路由功能。很多时候ISP为了保密或易于管理的需要,在连接用户侧的路由器时使用静态路由。总之:在一个网络中所有的路由器上都配置OSPF,而不使用静态路由的情况几乎是不存在的。——也就是说STUB区域的适用条件也是不存在的。1.5 NSSA区域STUB区域虽然为合理的规划网络描绘了美好的前景,但她在实际的组网中又不具备可操作性,未免遗憾。但此时的OSPF协议已经基本成型,不可能再做大的修改。为了弥补缺陷,协议设计者提出了一种新的概念NSSA,并且作为OSPF协议的一种扩展属性单独在RFC 1587中描述。NSSA需要完成如下任务:自治系统外的ASE路由不可以进入到NSSA区域中,但是NSSA区域内的路由器引入的ASE路由可以在NSSA中传播并发送到区域之外。即:取消了STUB关于ASE的双向传播的限制(区域外的进不来,区域里的也出不去),改为单向限制(区域外的进不来,区域里的能出去)。由于是作为OSPF标准协议的一种扩展属性,应尽量减少与不支持该属性的路由器协调工作时的冲突和兼容性问题。为了解决ASE单向传递的问题,NSSA中重新定义了一种LSA——Type 7类型的LSA,作为区域内的路由器引入外部路由时使用,该类型的LSA除了类型标识与Type 5不相同之外,其它内容基本一样。这样区域内的路由器就可以通过LSA的类型来判断是否该路由来自本区域内。但由于Type 7类的LSA是新定义的,对于不支持NSSA属性的路由器无法识别,所以协议规定:在NSSA的ABR上将NSSA内部产生的Type 7类型的LSA转化为Type 5类型的LSA再发布出去,并同时更改LSA的发布者为ABR自己。这样NSSA区域外的路由器就可以完全不用支持该属性。从上述描述可以看出:在NSSA区域内的所有路由器必须支持该属性(包括NSSA的ABR),而自治系统中的其他路由器则不需要。由于NSSA是由STUB区域的概念改进得来,所以她的名字叫做: “not-so-stubby” area ,本意是:不是那么STUB的区域。第2章 NSSA相关配置NSSA的原理不复杂,配置更简单,相关命令只有一条:[Router-ospf]area area-id nssa [ default-route-advertise ] [ no-import-route ] [ no-summary ]area-id:是需要配置成NSSA的区域的区域号。“[]”内的参数只有在该路由器是ABR时才会生效。关键字default-route-advertise用来产生缺省的Type-7 LSA,应用了该参数后,在ABR上无论路由表中是否存在缺省路由0.0.0.0,都会产生Type-7 LSA缺省路由;而在ASBR上当路由表中存在缺省路由0.0.0.0,才会产生Type-7 LSA缺省路由。关键字no-import-route用在ASBR上,使得OSPF通过import-route命令引入的路由不被通告到NSSA区域。如果NSSA的路由器既是ASBR也是ABR,一般选用该参数选项。为了进一步减少发送到NSSA区域中的链路状态发布(LSA)的数量,可以在ABR上配置no-summary属性,禁止ABR向NSSA区域内发送summary_net LSAs(Type-3 LSA)。配置该参数后,ABR会将Type3类型的LSA也过滤掉,即:NSSA区域中也不会出现区域间路由,路由表进一步精简。既然有缺省路由,那么其他指向区域外的具体路由都是没有必要的了。该参数推荐配置。即:如果路由器只是一台区域内路由器,只需配置area area-id nssa即可。如果是ABR,根据实际需要,选择添加三个可选参数ospf还可以支持流量工程,利用10lsa进行隧道建立

RIP路由表协议中水平分割的工作原理与作用是什么?

水平分割工作原理是:从一个借口接受到的路由信息,不再从这个接口转发了。作用:阻止路由环路 减少链路带宽

路由器RIP协议工作原理

1 网络互连 ——把自己的网络同其它的网络互连起来,从网络中获取更多的信息和向网络发布自己的消息,是网络互连的最主要的动力。网络的互连有多种方式,其中使用最多的是网桥互连和路由器互连。 1.1 网桥互连的网络 ——网桥工作在OSI模型中的第二层,即链路层。完成数据帧(frame)的转发,主要目的是在连接的网络间提供透明的通信。网桥的转发是依据数据帧中的源地址和目的地址来判断一个帧是否应转发和转发到哪个端口。帧中的地址称为“MAC”地址或“硬件”地址,一般就是网卡所带的地址。 ——网桥的作用是把两个或多个网络互连起来,提供透明的通信。网络上的设备看不到网桥的存在,设备之间的通信就如同在一个网上一样方便。由于网桥是在数据帧上进行转发的,因此只能连接相同或相似的网络(相同或相似结构的数据帧),如以太网之间、以太网与令牌环(token ring)之间的互连,对于不同类型的网络(数据帧结构不同),如以太网与X.25之间,网桥就无能为力了。 ——网桥扩大了网络的规模,提高了网络的性能,给网络应用带来了方便,在以前的网络中,网桥的应用较为广泛。但网桥互连也带来了不少问题:一个是广播风暴,网桥不阻挡网络中广播消息,当网络的规模较大时(几个网桥,多个以太网段),有可能引起广播风暴(broadcasting storm),导致整个网络全被广播信息充满,直至完全瘫痪。第二个问题是,当与外部网络互连时,网桥会把内部和外部网络合二为一,成为一个网,双方都自动向对方完全开放自己的网络资源。这种互连方式在与外部网络互连时显然是难以接受的。问题的主要根源是网桥只是最大限度地把网络沟通,而不管传送的信息是什么。 1.2 路由器互连网络 ——路由器互连与网络的协议有关,我们讨论限于TCP/IP网络的情况。 ——路由器工作在OSI模型中的第三层,即网络层。路由器利用网络层定义的“逻辑”上的网络地址(即IP地址)来区别不同的网络,实现网络的互连和隔离,保持各个网络的独立性。路由器不转发广播消息,而把广播消息限制在各自的网络内部。发送到其他网络的数据茵先被送到路由器,再由路由器转发出去。 ——IP路由器只转发IP分组,把其余的部分挡在网内(包括广播),从而保持各个网络具有相对的独立性,这样可以组成具有许多网络(子网)互连的大型的网络。由于是在网络层的互连,路由器可方便地连接不同类型的网络,只要网络层运行的是IP协议,通过路由器就可互连起来。 ——网络中的设备用它们的网络地址(TCP/IP网络中为IP地址)互相通信。IP地址是与硬件地址无关的“逻辑”地址。路由器只根据IP地址来转发数据。IP地址的结构有两部分,一部分定义网络号,另一部分定义网络内的主机号。目前,在Internet网络中采用子网掩码来确定IP地址中网络地址和主机地址。子网掩码与IP地址一样也是32bit,并且两者是一一对应的,并规定,子网掩码中数字为“1”所对应的IP地址中的部分为网络号,为“0”所对应的则为主机号。网络号和主机号合起来,才构成一个完整的IP地址。同一个网络中的主机IP地址,其网络号必须是相同的,这个网络称为IP子网。 ——通信只能在具有相同网络号的IP地址之间进行,要与其它IP子网的主机进行通信,则必须经过同一网络上的某个路由器或网关(gateway)出去。不同网络号的IP地址不能直接通信,即使它们接在一起,也不能通信。 ——路由器有多个端口,用于连接多个IP子网。每个端口的IP地址的网络号要求与所连接的IP子网的网络号相同。不同的端口为不同的网络号,对应不同的IP子网,这样才能使各子网中的主机通过自己子网的IP地址把要求出去的IP分组送到路由器上。 2 路由原理 ——当IP子网中的一台主机发送IP分组给同一IP子网的另一台主机时,它将直接把IP分组送到网络上,对方就能收到。而要送给不同IP于网上的主机时,它要选择一个能到达目的子网上的路由器,把IP分组送给该路由器,由路由器负责把IP分组送到目的地。如果没有找到这样的路由器,主机就把IP分组送给一个称为“缺省网关(default gateway)”的路由器上。“缺省网关”是每台主机上的一个配置参数,它是接在同一个网络上的某个路由器端口的IP地址。 ——路由器转发IP分组时,只根据IP分组目的IP地址的网络号部分,选择合适的端口,把IP分组送出去。同主机一样,路由器也要判定端口所接的是否是目的子网,如果是,就直接把分组通过端口送到网络上,否则,也要选择下一个路由器来传送分组。路由器也有它的缺省网关,用来传送不知道往哪儿送的IP分组。这样,通过路由器把知道如何传送的IP分组正确转发出去,不知道的IP分组送给“缺省网关”路由器,这样一级级地传送,IP分组最终将送到目的地,送不到目的地的IP分组则被网络丢弃了。 ——目前TCP/IP网络,全部是通过路由器互连起来的,Internet就是成千上万个IP子网通过路由器互连起来的国际性网络。这种网络称为以路由器为基础的网络(router based network),形成了以路由器为节点的“网间网”。在“网间网”中,路由器不仅负责对IP分组的转发,还要负责与别的路由器进行联络,共同确定“网间网”的路由选择和维护路由表。 ——路由动作包括两项基本内容:寻径和转发。寻径即判定到达目的地的最佳路径,由路由选择算法来实现。由于涉及到不同的路由选择协议和路由选择算法,要相对复杂一些。为了判定最佳路径,路由选择算法必须启动并维护包含路由信息的路由表,其中路由信息依赖于所用的路由选择算法而不尽相同。路由选择算法将收集到的不同信息填入路由表中,根据路由表可将目的网络与下一站(nexthop)的关系告诉路由器。路由器间互通信息进行路由更新,更新维护路由表使之正确反映网络的拓扑变化,并由路由器根据量度来决定最佳路径。这就是路由选择协议(routing protocol),例如路由信息协议(RIP)、开放式最短路径优先协议(OSPF)和边界网关协议(BGP)等。 ——转发即沿寻径好的最佳路径传送信息分组。路由器首先在路由表中查找,判明是否知道如何将分组发送到下一个站点(路由器或主机),如果路由器不知道如何发送分组,通常将该分组丢弃;否则就根据路由表的相应表项将分组发送到下一个站点,如果目的网络直接与路由器相连,路由器就把分组直接送到相应的端口上。这就是路由转发协议(routed protocol)。 ——路由转发协议和路由选择协议是相互配合又相互独立的概念,前者使用后者维护的路由表,同时后者要利用前者提供的功能来发布路由协议数据分组。下文中提到的路由协议,除非特别说明,都是指路由选择协议,这也是普遍的习惯。 3 路由协议 ——典型的路由选择方式有两种:静态路由和动态路由。 ——静态路由是在路由器中设置的固定的路由表。除非网络管理员干预,否则静态路由不会发生变化。由于静态路由不能对网络的改变作出反映,一般用于网络规模不大、拓扑结构固定的网络中。静态路由的优点是简单、高效、可靠。在所有的路由中,静态路由优先级最高。当动态路由与静态路由发生冲突时,以静态路由为准。 ——动态路由是网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由器表的过程。它能实时地适应网络结构的变化。如果路由更新信息表明发生了网络变化,路由选择软件就会重新计算路由,并发出新的路由更新信息。这些信息通过各个网络,引起各路由器重新启动其路由算法,并更新各自的路由表以动态地反映网络拓扑变化。动态路由适用于网络规模大、网络拓扑复杂的网络。当然,各种动态路由协议会不同程度地占用网络带宽和CPU资源。

静态路由和RIP路由以及OSPF路由的原理和比较,各自的优缺点和应用范围

1.静态路由是由网络管理员采用手工方法在路由器中配置而成,适用于规模较小,路由表也相对简单的网络中使用。缺点:不适用于大规模网络,不能自动适应网络拓扑结构变化,手工配置管理员压力较大。优点:手工配置可以精确控制路由选择,改进网络性能;不需要动态路由协议参与,减少路由开销,为重要的应用保证带宽。2.rip路由信息协议,采用距离向量算法。早早期路由协议,缺点:路由范围有限,只能支持在直径为15个路由的网络内进行路由,不能适应复杂拓扑结构网络,采用DV算法会有路由环路问题存在;优点:配置简单在小型网络中较常见。3.OSPF开放最短路径优先,是为大型网络设计的一种路由协议缺点:比较复杂,实施前需要规划,且配置和维护都比较复杂优点:根据收集到网络上的链路状态,采用SPF算法,计算以他为中心的一棵最短路径树。他十分有效,采用链路状态算法,网络流量小,收敛速度快,没有路由环路存在。

简述RIP、OSPF、BGP这三个动态路由协议在工作原理上的区别

。。。RIP 已经不用 OSPF 很需要,很重要BGP 是 ISP 之间的 路径协议,请注意是路径协议,他的强大之处不是他的协议本身,而是 路由策略。RIP 的原理,说白了就是 每台路由器 自己宣告自己的 直连网段,然后 综合其他人的,然后收敛。OSPF 看名字就知道SPF,是看SLA 的 DB 数据库 收敛,然后自己计算的。BGP 这里我不说了,RIP 都不知道,还谈什么 BGP。。

RIP、OSPF、BGP这三个动态路由协议在工作原理上的区别是什么?

你首先分类就混淆了路由协议分为IGP(内部路由协议)与BGP(边界网关协议)RIP OSPF EIGRP都属于IGP,即一个自治系统内所使用的路由协议而BGP是自治系统间相互访问所使用的,它涉及到ISP运营商。可以理解为一个自治系统就是一台大路由器,这些路由器中间跑的协议就是BGP。这里的自治系统只的是物理意义上的自治系统例如联通网 电信网RIP是距离矢量路由协议,它通过交换明确的路由来达到全网互通,即是说他所获得的路由都是通过邻居发送过来的。类似于问路的时候沿路打听OSPF是链路状态路由协议,他不发送路由信息。而是通过发送链路状态LSA来独自计算路由条目。类似GPS发送给对方方位后具体怎么走是本地系统计算出来的

简述静态路由、RIP和OSPF动态路由的原理以及各自的优缺点。

静态路由原理:路由项(routing entry)由手动配置,而非动态决定。与动态路由不同,静态路由是固定的,不会改变,即使网络状况已经改变或是重新被组态。一般来说,静态路由是由网络管理员逐项加入路由表。优点:使用静态路由的另一个好处为网络安全保密性高。动态路由因为需要路由器之间频繁地交换各自的路由表,而对路由表的分析可以揭示网络的拓扑结构和网络地址等信息。因此,网络出于安全方面的考虑也可以采用静态路由。不占用网络带宽,因为静态路由不会产生更新流量。缺点:大型和复杂的网络环境通常不宜采用静态路由。一方面,网络管理员难以全面地了解整个网络的拓扑结构;另一方面,当网络的拓扑结构和链路状态发生变化时,路由器中的静态路由信息需要大范围地调整,这一工作的难度和复杂程度非常高。当网络发生变化或网络发生故障时,不能重选路由,很可能使路由失败。RIP原理:1 、初始化。RIP初始化时,会从每个参与工作的接口上发送请求数据包。该请求数据包会向所有的RIP路由器请求一份完整的路由表。该请求通过LAN上的广播形式发送LAN或者在点到点链路发送到下一跳地址来完成。这是一个特殊的请求,向相邻设备请求完整的路由更新。2 、接收请求。RIP有两种类型的消息,响应和接收消息。请求数据包中的每个路由条目都会被处理,从而为路由建立度量以及路径。RIP采用跳数度量,值为1的意为着一个直连的网络,16,为网络不可达。路由器会把整个路由表作为接收消息的应答返回。3、接收到响应。路由器接收并处理响应,它会通过对路由表项进行添加,删除或者修改作出更新。4、 常规路由更新和定时。路由器以30秒一次地将整个路由表以应答消息地形式发送到邻居路由器。路由器收到新路由或者现有路由地更新信息时,会设置一个180秒地超时时间。如果180秒没有任何更新信息,路由的跳数设为16。路由器以度量值16宣告该路由,直到刷新计时器从路由表中删除该路由。刷新计时器的时间设为240秒,或者比过期计时器时间多60秒。Cisco还用了第三个计时器,称为抑制计时器。接收到一个度量更高的路由之后的180秒时间就是抑制计时器的时间,在此期间,路由器不会用它接收到的新信息对路由表进行更新,这样能够为网路的收敛提供一段额外的时间。5、 触发路由更新。当某个路由度量发生改变时,路由器只发送与改变有关的路由,并不发送完整的路由表。优点:仅和相邻的路由器交换信息。如果两个路由器之间的通信不经过另外一个路由器,那么这两个路由器是相邻的。RIP协议规定,不相邻的路由器之间不交换信息。路由器交换的信息是当前本路由器所知道的全部信息。即自己的路由表。按固定时间交换路由信息,如,每隔30秒,然后路由器根据收到的路由信息更新路由表。缺点:1、过于简单,以跳数为依据计算度量值,经常得出非最优路由。2、度量值以16为限,不适合大的网络。3、安全性差,接受来自任何设备的路由更新。无密码验证机制,默认接受任何地方任何设备的路由更新。不能防止恶意的rip欺骗。4、不支持无类ip地址和VLSM<ripv1>。5、收敛性差,时间经常大于5分钟。6、消耗带宽很大。完整的复制路由表,把自己的路由表复制给所有邻居,尤其在低速广域网链路上更以显式的全量更新。OSPF原理:1、初始化形成端口初始信息:在路由器初始化或网络结构发生变化(如链路发生变化,路由器新增或损坏)时,相关路由器会产生链路状态广播数据包LSA,该数据包里包含路由器上所有相连链路,也即为所有端口的状态信息。2、路由器间通过泛洪(Floodingl机制交换链路状态信息:各路由器一方面将其LSA数据包传送给所有与其相邻的OSPF路由器,另一方面接收其相邻的OSPF路由器传来的LSA数据包,根据其更新自己的数据库。3、形成稳定的区域拓扑结构数据库:OSPF路由协议通过泛洪法逐渐收敛,形成该区域拓扑结构的数据库,这时所有的路由器均保留了该数据库的一个副本。4、形成路由表:所有的路由器根据其区域拓扑结构数据库副本采用最短路径法计算形成各自的路由表。优点:OSPF适合在大范围的网络;组播触发式更新;收敛速度快;以开销作为度量值;OSPF协议的设计是为了避免路由环路;应用广泛。缺点:OSPF协议的配置对于技术水平要求很高,配置比较复杂的;路由其自身的负载分担能力是很低的。扩展资料RIP作为IGP(内部网关协议)中最先得到广泛使用的一种协议,主要应用于 AS 系统,即自治系统(Autonomous System)。连接 AS 系统有专门的协议,其中最早的这样的协议为“EGP”(外部网关协议),仍然应用于因特网,这样的协议通常被视为内部 AS路由选择协议。RIP主要设计来利用同类技术与大小适度的网络一起工作。因此通过速度变化不大的接线连接,RIP 比较适用于简单的校园网和区域网,但并不适用于复杂网络的情况。参考资料来源:百度百科-静态路由参考资料来源:百度百科-OSPF路由协议参考资料来源:百度百科-路由选择信息协议

“RIP、OSPF、BGP”这三个动态路由协议在工作原理上的区别是什么?

你首先分类就混淆了路由协议分为IGP(内部路由协议)与BGP(边界网关协议)RIP OSPF EIGRP都属于IGP,即一个自治系统内所使用的路由协议而BGP是自治系统间相互访问所使用的,它涉及到ISP运营商。可以理解为一个自治系统就是一台大路由器,这些路由器中间跑的协议就是BGP。这里的自治系统只的是物理意义上的自治系统例如联通网 电信网RIP是距离矢量路由协议,它通过交换明确的路由来达到全网互通,即是说他所获得的路由都是通过邻居发送过来的。类似于问路的时候沿路打听OSPF是链路状态路由协议,他不发送路由信息。而是通过发送链路状态LSA来独自计算路由条目。类似GPS发送给对方方位后具体怎么走是本地系统计算出来的

RIP路由协议的工作原理?

动态路由协议有距离向量路由协议和链路状态路由协议两种,RIP(Routing Information Protocol,路由信息协议)就是最典型的距离向量路由协议,它被广泛应用于小型的同类网络。RIP是由Xerox在20世纪70年代开发的,最初定义在RFC1058中。RIP用两种数据包进行传输更新:更新和请求,每个有RIP功能的路由器在默认的情况下,每间隔30秒利用UDP 520端口向与它直连的网络邻居广播(RIPv1)或者组播(RIPv2)路由更新。RIP协议分为版本1和版本2,但不论版本1还是版本2,它们都具备下面的特征:1)都是距离向量路由协议;2)使用跳数(Hop Count)作为度量值;3)默认路由更新周期为30秒时间;4)管理距离(AD)为120;5)支持触发更新;6)最大跳数为15跳;7)支持等价路径,默认4条,最大16条;8)使用UDP 520端口进行路由更新。RIPv1和RIPv2的主要差异如下:表1 RIPv1和RIPv2的区别2 RIP协议的工作原理2.1 RIP路由表RIP协议路由表中包含了一系列的信息:目的地的地址;到目的地路径的下一跳及距离计算值,距离是指到达目的地的网络所要经过路由器的个数;除了这些最主要的信息外,路由表还包括了其他的一些信息:比如时钟(计时器)、状态信息(标志位)。下面就是一个典型的RIP路由表:表2 RIP路由表2.2 RIP工作原理RIP协议的整个运行都是与RIP路由表密切相关的,简单来说其工作原理就是路由器之间进行RIP路由表的交换的过程。1)RIP路由表的更新维护路由器每30秒通过UDP报文发送路由交换信息,以此确定邻居是否存在。如果180秒内未收到相邻节点的路由信息反馈,则标识该条路径不可达;再经过120秒还是未收到路由信息反馈,就删除这条路由。一旦网络发送变换,路由器就必须更新RIP路由表,这个过程可以称之为收敛(Convergence),RIP协议要确定一条路径是否可达需要3分钟,所以整个收敛过程是比较慢的。路由表是存放在路由器的内存中,路由器启动后会初始化路由表,对每个直连网络生成一条路由信息,然后复制相邻路由器上的路由表,每复制一次“跳数”就加1,并且把下一跳地址指向该路由器。例如达到某个网络下一跳地址是指向R1,可是R1上没有到达该网络的路由信息,则删除该条路由。“跳数”是直到达目的网络所必须经过路由器的个数,直连网络的跳数为0,优先级也是最高。2)路由环路由于RIP是距离向量路由协议,因而也就有了该类协议的弱点:可能会产生路由环路。一般来说,产生路由环路常见原因有二:一是有可能静态路由的设置不合理,二是动态路由的定时广播产生了误会。情况一,静态路由设置不合理:假设有两个路由器R1和R2,它们的路由表中都有一条到达同一目标网络的静态路由信息,并且下一跳地址彼此指向对方,这样就产生了环路。情况二,动态路由产生的:假设路由器R1有条通过路由器R2到达网络A的路由信息,但是由于网络变化,路由器R2到网络A不可达,并且路由器R2的路由广播先于路由器R1。由于路由器R1路由表中有到达网络A的路由,且下一跳地址就是R2,所以路由器R2就会学习到路由器R1的这条路由信息,并且将下一跳的地址设置为R1,如此一来,路由器R1和R2都把下一跳地址彼此指向对方了,从而形成环路。3)环路的解决由于环路的产生,不利用网络的正常高效运行,所以针对此种情况有如下解决方法:① 设置最大跳数:RIP协议规定了最大跳数为16,跳数达到16就标识该条路由不通,并且会阻止环跳继续进行,如上文中描述的环路产生情况二,就可以通过这种方法来解决环路的产生。② 水平分割:水平分割就是把路由信息中发送给原发者的信息过滤掉,路由信息采用单向发送。③ 毒性反转:毒性反转是水平分割的改进版本,如果路由器收到的路由信息是自己原来发送的信息,就马上将此路由信息的跳数设置为16,这个过程称之为毒化。④ 触发方式:这种方法主要是避免网络收敛速度慢而形成环路,只要网络发生了变化,路由器马上发送更新路由信息,迅速通知相邻的路由器,避免信息误传。⑤ 抑制时间:这是指路由器在收到路由变化信息时,马上开启抑制时间,在这段时间内,有变化的项目被冻结,用以防止信息被错误覆盖。3 RIP协议的优缺点RIP协议最大的优点就是实现起来简单,开销比较小,很适合小型网络,但其也存在一些缺陷:1)当网络出现故障时,需要比较长的时间才能将此消息传递到所有的路由器上,通俗的说就是坏消息传播的慢。2)由于RIP协议规定最大的“跳数”是15,也就是路由器个数,因此限制了网络规模。3)路由器彼此之间交换的信息是路由器上的完整路由表,随着网络的不断扩大,所花费的开销也随之增加。

RIP协议和OSPF协议有什么区别?

RIP(Routing Information Protocol)和OSPF(Open Shortest Path First)是两种常用的路由协议,它们在实现动态路由的过程中有一些本质的区别。工作原理RIP是一种基于距离向量的路由协议,它使用跳数作为路径选择的度量标准。当一个路由器收到来自邻居路由器的路由更新信息时,它会将该信息添加到自己的路由表中,并将新的路由表信息传播到其他邻居路由器。OSPF是一种基于链路状态的路由协议,它使用链路状态数据库(Link State Database)来维护网络拓扑信息,并使用Dijkstra算法计算最短路径。当一个路由器发现网络拓扑发生变化时,它会将这些信息广播给整个网络中的所有路由器,使得每个路由器都能够更新自己的路由表。支持的网络规模RIP适用于小型网络,它的距离向量信息会随着网络规模的增大而增多,导致网络拓扑的收敛速度变慢,并且容易出现路由环路和路由震荡等问题。因此,RIP的支持的网络规模有限。OSPF适用于大型网络,它使用链路状态数据库来维护网络拓扑信息,能够有效地支持大规模网络,并且具有快速收敛和低误差等优点。路由计算复杂度RIP的路由计算复杂度相对较低,因为它使用简单的距离向量算法来选择路径。OSPF的路由计算复杂度较高,因为它使用链路状态信息和Dijkstra算法来计算最短路径,这需要更多的计算资源和存储空间。综上所述,RIP和OSPF在实现动态路由时有一些本质的区别,包括工作原理、支持的网络规模和路由计算复杂度等方面。网络管理员需要根据具体的网络规模、性能需求和资源限制等因素来选择合适的路由协议。-------FunNet超有趣学网络

RIP和OSPF有什么本质区别吗?

RIP(Routing Information Protocol)和OSPF(Open Shortest Path First)是两种常用的路由协议,它们在实现动态路由的过程中有一些本质的区别。工作原理RIP是一种基于距离向量的路由协议,它使用跳数作为路径选择的度量标准。当一个路由器收到来自邻居路由器的路由更新信息时,它会将该信息添加到自己的路由表中,并将新的路由表信息传播到其他邻居路由器。OSPF是一种基于链路状态的路由协议,它使用链路状态数据库(Link State Database)来维护网络拓扑信息,并使用Dijkstra算法计算最短路径。当一个路由器发现网络拓扑发生变化时,它会将这些信息广播给整个网络中的所有路由器,使得每个路由器都能够更新自己的路由表。支持的网络规模RIP适用于小型网络,它的距离向量信息会随着网络规模的增大而增多,导致网络拓扑的收敛速度变慢,并且容易出现路由环路和路由震荡等问题。因此,RIP的支持的网络规模有限。OSPF适用于大型网络,它使用链路状态数据库来维护网络拓扑信息,能够有效地支持大规模网络,并且具有快速收敛和低误差等优点。路由计算复杂度RIP的路由计算复杂度相对较低,因为它使用简单的距离向量算法来选择路径。OSPF的路由计算复杂度较高,因为它使用链路状态信息和Dijkstra算法来计算最短路径,这需要更多的计算资源和存储空间。综上所述,RIP和OSPF在实现动态路由时有一些本质的区别,包括工作原理、支持的网络规模和路由计算复杂度等方面。网络管理员需要根据具体的网络规模、性能需求和资源限制等因素来选择合适的路由协议。-------FunNet超有趣学网络

RIP、OSPF、BGP这三个动态路由协议在工作原理上的区别是什么?

你首先分类就混淆了路由协议分为IGP(内部路由协议)与BGP(边界网关协议)RIP OSPF EIGRP都属于IGP,即一个自治系统内所使用的路由协议而BGP是自治系统间相互访问所使用的,它涉及到ISP运营商。可以理解为一个自治系统就是一台大路由器,这些路由器中间跑的协议就是BGP。这里的自治系统只的是物理意义上的自治系统例如联通网 电信网RIP是距离矢量路由协议,它通过交换明确的路由来达到全网互通,即是说他所获得的路由都是通过邻居发送过来的。类似于问路的时候沿路打听OSPF是链路状态路由协议,他不发送路由信息。而是通过发送链路状态LSA来独自计算路由条目。类似GPS发送给对方方位后具体怎么走是本地系统计算出来的

OSPF、RIP的工作原理以及各自的优缺点

rip协议是距离矢量路由选择协议,它选择路由的度量标准(metric)是跳数,最大跳数是15跳,如果大于15跳,它就会丢弃数据包。 ospf协议是链路状态路由选择协议,它选择路由的度量标准是带宽,延迟。 RIP的局限性在大型网络中使用所产生的问题:RIP的15跳限制,超过15跳的路由被认为不可达RIP不能支持可变长子网掩码(VLSM),导致IP地址分配的低效率周期性广播整个路由表,在低速链路及广域网云中应用将产生很大问题收敛速度慢于OSPF,在大型网络中收敛时间需要几分钟RIP没有网络延迟和链路开销的概念,路由选路基于跳数。拥有较少跳数的路由总是被选为最佳路由即使较长的路径有低的延迟和开销RIP没有区域的概念,不能在任意比特位进行路由汇总RIPv2支持VLSM,认证以及组播更新。但RIPv2的跳数限制以及慢收敛使它仍然不适用于大型网络相比RIP而言,OSPF更适合用于大型网络:没有跳数的限制支持可变长子网掩码(VLSM)使用组播发送链路状态更新,在链路状态变化时使用触发更新,提高了带宽的利用率收敛速度快具有认证功能OSPF协议主要优点:1、OSPF是真正的LOOP- FREE(无路由自环)路由协议。源自其算法本身的优点。(链路状态及最短路径树算法)2、OSPF收敛速度快:能够在最短的时间内将路由变化传递到整个自治系统。3、提出区域(area)划分的概念,将自治系统划分为不同区域后,通过区域之间的对路由信息的摘要,大大减少了需传递的路由信息数量。也使得路由信息不会随网络规模的扩大而急剧膨胀。4、将协议自身的开销控制到最小。见下:1)用于发现和维护邻居关系的是定期发送的是不含路由信息的hello报文,非常短小。包含路由信息的报文时是触发更新的机制。(有路由变化时才会发送)。但为了增强协议的健壮性,每1800秒全部重发一次。2)在广播网络中,使用组播地址(而非广播)发送报文,减少对其它不运行ospf 的网络设备的干扰。3)在各类可以多址访问的网络中(广播,NBMA),通过选举DR,使同网段的路由器之间的路由交换(同步)次数由 O(N*N)次减少为 O (N)次。4)提出STUB区域的概念,使得STUB区域内不再传播引入的ASE路由。5)在ABR(区域边界路由器)上支持路由聚合,进一步减少区域间的路由信息传递。6)在点到点接口类型中,通过配置按需播号属性(OSPF over On Demand Circuits),使得ospf不再定时发送hello报文及定期更新路由信息。只在网络拓扑真正变化时才发送更新信息。5、通过严格划分路由的级别(共分四极),提供更可信的路由选择。6、良好的安全性,ospf支持基于接口的明文及md5 验证。7、OSPF适应各种规模的网络,最多可达数千台。OSPF的缺点1、配置相对复杂。由于网络区域划分和网络属性的复杂性,需要网络分析员有较高的网络知识水平才能配置和管理OSPF网络。2、路由负载均衡能力较弱。OSPF虽然能根据接口的速率、连接可靠性等信息,自动生成接口路由优先级,但通往同一目的的不同优先级路由,OSPF只选择优先级较高的转发,不同优先级的路由,不能实现负载分担。只有相同优先级的,才能达到负载均衡的目的,不象EIGRP那样可以根据优先级不同,自动匹配流量。

简述静态路由、RIP和OSPF动态路由的原理以及各自的优缺点。

你一个问题需要的答案很多啊,静态路由用于小型的网络一般3-5台,配置简单对设备要求较低,rip也用于小型网络的动态路由协议,用于15台一下的组网结构,对设备有一定要求,设备之间交换路由表,网络较大时会占用较大的带宽,rip存在路由自环,ospf动态路由协议拥有中型和大型网络,在100台一下的组网,对设备要求比较高因为其需要cpu进行spf算法,相互交换链路状态信息,较rip来说可能节省带宽,这种算法使用cpu较多,但是不会产生路由环路,运用比较广泛。

meadco scriptx可以卸载吗?

可以卸载 的,你可以打开360软件管家里的软件卸载 ,在里边找到它后卸载就可以了

小学英语作文:一次愉快的旅程 A Happy Trip

  【篇一】一次愉快的旅程 A Happy TripWhen the weekend comes, I feel so happy, my friend and I make a small trip to go to visit my hometown. We take the bus, we enjoy the scenery all the way, the trees are so green and the water is so clean. We take many pictures, we catch finish in the river and take the boat, we have so much fun, it is a happy trip. 当周末来临的时候,我感到很开心,我的朋友和我展开了一次旅程,我们去看望了家乡 My Hometown">我的家乡。我们坐巴士,一路上都享受着风景,树是那么的油绿,水是那么的清澈。我们照了很多照片,我们在水中抓鱼,开船,玩得很开心,这是一次愉快的旅程。  【篇二】我喜欢小鸡 I like chickI like small animals. I like playing with them. My favorite animal is chick. They look lovely and like running. I also like running with them. It is a funny game. Sometimes I will give some food to them. They are always very happy to get the food. They like speaking. But I always cannot know what they say. And it doesn"t let me not like them. 我喜欢小动物。我喜欢跟它们玩。小鸡是我最喜欢的动物。它们长得好可爱,而且还很喜欢跑来跑去的,我还喜欢跟它们一起跑。真的是很好玩的游戏。有时候我会拿食物给它们。有吃的它们会很开心。它们很喜欢说话,不过我基本上都听不懂它们在说什么。但是这不影响我喜欢它们。  【篇三】独特的老师 My Special TeacherMy English teacher is special, she teaches us in the different way. Since the day she comes to us, she says we can talk in the class, what"s more, we also can eat things, she never cares so much about the class rules. Her teaching method works, we always take the first place in the exam. I wish someday I could be a teacher like her. 我的英语老师很特别,她用不同与别人的方式来教我们。打从她来到我们前面的第一天起,她就说我们可以在课堂上聊天,而且,我们也可以吃东西,她总是不怎么介意课堂纪律。她的教育方法确实有效,我们总是考到了第一名。我希望将来有一天我也能成为像她那样的老师。               

旅行用英语怎么说trip

TRIP,作为名词,一般指短途旅行,通常时间短、距离近。比如当天来回,短程出差,或者是两天一夜的旅程都可以称为Trip。例句:—The trip from York to Newcastle takes about an hour by train.—从约克郡到纽卡斯尔,乘火车大约需要一个小时。—We"re going on a trip to Norway this summer.—今年夏天我们要去挪威旅行。—The travel company has written giving information about the trip.—这家旅行社已经给出了本次的旅行信息。JOURNEY,既可作为名词,又可作为动词。作为名词时,指的是从一个地方到另一个地方的旅程,也可以表示心灵的旅程;作为动词时,就是“旅行”的意思。Journey这个词一般含有“比较艰辛的旅途”的意思。TRAVEL,既可作为名词,又可作为动词。作为名词时,一般指距离较远的旅行;作为动词时,可以指旅行这个动作,也可以指从一个地方到另一个地方,通常都指较长距离。

「毕业旅行」英文怎么说?秒懂英文「graduation trip」中文意思

毕业旅行 英文 应该怎么说呢?其实外国人没有所谓的毕业旅行的说法,毕业旅行在亚洲比较常见,当你要用英文说毕业旅行的时候,其实用graduation trip 这样的说法就可以了。 下面整理了「毕业旅行」的相关英文说法与英文例句,赶快学起来吧! 1. graduation trip 毕业旅行 「毕业旅行」的英文可以说graduation trip,graduation是指毕业,trip是指一段旅游行程,加起来就是毕业旅行的意思啦。 毕业旅行相关英文单字: 例: We"ve got 10 of our favorite destinations for graduation trips. 我们有10个我们最喜欢的毕业旅行目标地。 例: Greece is the perfect place for a graduation trip. 希腊是毕业旅行的理想之地。 毕业旅行 英文, 毕业旅行 英文怎么说, 毕业旅行的英文, 英文 毕业旅行

印刷制版中的JDF PDF RIP分别是什么意思 之间有什么联系

JDF(Job Definition Format)即活件 描述格式,是一种基于XML(可扩展标 志语言)用于活件的描述及交换的开放 式文件格式。从活件开始到结束,JDF 携带一个印刷活 件,它详细描述了设计创意、印前、印刷 、印後和交货工序的信息。PDF 是一种电子 文件格式,与操作 系统平台无关,由 Adobe 公司开发而成。PDF 文件是以 PostScript语言图象模型为基础,无 论在哪种打印机上都可保证精确的颜 色和准确的打印效果,即PDF会忠实 地再现原稿的每一个字符、颜色以及 图象。

A trip to Beijing英语作文

  无论是身处学校还是步入社会,大家都写过作文吧,写作文可以锻炼我们的独处习惯,让自己的心静下来,思考自己未来的方向。那么你有了解过作文吗?下面是我整理的A trip to Beijing英语作文,仅供参考,欢迎大家阅读。   A trip to Beijing英语作文 篇1   Last summer , my parents and I went to Beijing , I was very happy.   Beijing is the capital of China. There are many places of interest , many people come to visit Beijing every year.   I climbed the Great Wall. It"s very famous. It looks like huge flying dragon. It"s said that it"s the only man-made wonder on the earth we can from the moon. It has a long history about 2,000 years. I have taken many photos of it.   I visited the Summer Palace and the Palace Museum , too. They are all very wonderful. I had a wonderful time.   I think Beijing is one of the most beautiful and famous cities in the world.   I want to visit Beijing again.Welcome to Beijing.   A trip to Beijing英语作文 篇2   On summer holiday my parents took me to Beijing. We stayed at Huabei Hotel. On the first day, we went to the Great Wall. The Great Wall is very long and old. It has millions of bricks. Each brick is very big and heavy. Lots of people from different countries like climbing the Great Wall. We felt very tired when we climbed to the top of the Great Wall. We also went to the Palace Museum. The Palace Museum has 9999 palaces. It has a very long history. I bought a lot of souvenirs of the Palace Museum. What nice palaces these are!   I visited the Palace Museum and felt excited. If you want to know more about the Palace Museum, you can go to Beijing and have a look. The following days, we went to the Summer Palace, Tian Tan, North Lake and Xiang Hill. I now know more about the history of China. I also like modern Beijing. The 2008 Olympic Games will be held in Beijing. Later, I went back with my parents by train. I really enjoyed the trip to Beijing. I like this trip!   A trip to Beijing英语作文 篇3   Warmly welcome all of you to visit to China. I hear that you are a Canadian high school students delegation who come to China to exchange learning. I sincerely hope you can have fun in China.   It"s a great pity that you only stay for two days in Beijing that you cannot enjoy every tourist attractions. But you can still visit the attractions of the most representative.   Firstly, I suggest you going to the Great Wall, which is the longest wall and one of the eight wonders of the world. It was built by hands only, which seems unimaginable.   On the second day, you can visit to the Imperial Palace where you can learn more about Chinese history.   It was built in 1406 and there were 24 emperors living in there. And then you can go to Summer Palace or Beihai Park.   Beijing is a modern city as well as a historic city where there are many places worth visiting. Given the chance, welcome to travel to Beijing in the future.   A trip to Beijing英语作文 篇4   On summer holiday my parents took me to Beijing. We stayed at Huabei Hotel. On the first day, we went to the Great Wall. The Great Wall is very long and old. It has millions of bricks. Each brick is very big and heavy. Lots of people from different countries like climbing the Great Wall. We felt very tired when we climbed to the top of the Great Wall. We also went to the Palace Museum. The Palace Museum has 9999 palaces.   It has a very long history. I bought a lot of souvenirs of the Palace Museum. What nice palaces these are! I visited the Palace Museum and felt excited. If you want to know more about the Palace Museum, you can go to Beijing and have a look. The following days, we went to the Summer Palace, Tian Tan, North Lake and Xiang Hill. I now know more about the history of China. I also like modern Beijing. The 20xx Olympic Games will be held in Beijing. Later, I went back with my parents by train. I really enjoyed the trip to Beijing. I like this trip!   A trip to Beijing英语作文 篇5   Beijing is our capital city which is famous for its long history. Now we have a one-day tour plan for you.   北京是我们的首都,以悠久的历史而闻名。现在我们为你制定了一天的旅游计划。   In the morning, you can start the day at the Great Wall. It"s one of the greatest wonders in the world. It"s so magnificent that you can"t go to Beijing without visiting the Great Wall. At noon, you can go to the Summer Palace. There are so many interesting sites, such as Wanshou Mountain, Kunming Lake, Suzhou Street, and some other ancient palaces. So you can climb Wanshou Mountain first. The view on the top is so wonderful. Next, you can go boating on Kunming Lake, and then, walk on Suzhou Street to enjoy the life of regions south of the Yangtze River. In the afternoon, you can go to have a long walk on Tiananman Square, in order to see the city well, and then you can visit the Palace Museum. There you can see different objects of different periods. They are of great value. In the evening, the Front Gate Walking Street is a good place to go where you can buy various kinds of souvenirs and clothes. Most buildings there have the traditional Chinese styles. Maybe you can know some history of ancient Beijing.   早晨你可以从长城开始新的一天。它是世界上最伟大的奇观之一。太壮观了,壮观到去北京不能不去参观长城。中午,你可以去颐和园。有那么多名胜古迹,如万寿山,昆明湖,苏州街,以及其他的一些古老宫殿。你可以先爬万寿山。山顶的景色是很美丽的。之后你可以去昆明湖划船,然后,走在苏州街来享受长江以南地区的生活。下午,你可以去天安门广场上散步,为了更好的看清楚这个城市,接下来你可以参观故宫博物馆。在那里你可以看到不同时期不同的物体。他们是很有价值的"。晚上,前门步行街是一个很好的地方,在那里可以买到各种纪念品和衣服。那里的大多数建筑物都是中国传统风格。也许你可以了解到一些古老的北京城的历史。   Wish you a nice trip.   祝你旅途愉快   A trip to Beijing英语作文 篇6   This summer holiday I have been to BeiJing for a travel. it was a great journey! we have went to see the Imperial Palace and the great wall and them let me feel that I was proud to be a Chinese.   The Imperial Palace noted the history. there were many antiques which we could espy the great culture .   From the great wall,it was a well-known wonder in the world.it is made of big stones which was too heavy to bring even uesing it to buil a construction of ruggedization. what a great grandeur!

求javascript js正则表达式匹配以@@开头@@结尾,不包含@@的字符串

String regex = "^A*C*B$"; Pattern p = Pattern.compile(regex); java.util.regex.Matcher m = p.matcher("这里是你要匹配的字符串"); while (m.find()) { System.out.println(m.group()); }

JavaScript如何修改页面中iframe的属性值

<?xml version="1.0" encoding="gbk"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh" lang="zh" dir="ltr"><head profile="http://www.w3.org/2000/08/w3c-synd/#"> <title>New Page | xHTML1.0 Transitional</title> <link rel="shortcut icon" href="favicon.ico" /> <script type="text/javascript"> //放大 function ChangeBig() { var myFrame=document.getElementById("myFrame"); var fWidth=parseInt(myFrame.width); var fHeight=parseInt(myFrame.height); if(fWidth<600) { myFrame.width=fWidth+20; myFrame.height=fHeight+20; } else { alert("已经放至最大"); } } //缩小 function ChangeSmall() { var myFrame=document.getElementById("myFrame"); var fWidth=parseInt(myFrame.width); var fHeight=parseInt(myFrame.height); if(fHeight>=100) { myFrame.width=fWidth-20; myFrame.height=fHeight-20; } else { alert("已经缩至最小"); } } </script></head><body> <iframe src="http://www.baidu.com" id="myFrame" name="x" width="200" height="100"></iframe> <br/> <input type="button" value="放大" onclick="ChangeBig()"/> <input type="button" value="缩小" onclick="ChangeSmall()"/></body></html>说明:以上代码在IE6和Firefox中测试通过。看在我辛苦的敲了这么多字符的份上还是给我加点分三,(*^__^*) 嘻嘻……

如何使用json在前后台进行数据传输实例介绍_javascript技巧

上一篇博客写到用javascript生成多组文本,可以让数据的输入不受显示,现在我们需要把这些输入写入数据库,这里就用到json传入。 首先,我们来写一下后台如何生成要传输的数据 [html] 代码如下: function generateDtb() { //写入 var txtName = document.getElementById("txtName").value; //创建数组 var dtb = new Array(); //通过循环把数据写入到数组并返回 for (var i = 0; i < firstGroup.length; i++) { var row = new Object(); row.Name = txtName; row.fullMoney = firstGroup[i].value; row.discount = secondGroup[i].value; dtb.push(row); } return dtb; } function generateDtb() { //写入 var txtName = document.getElementById("txtName").value; //创建数组 var dtb = new Array(); //通过循环把数据写入到数组并返回 for (var i = 0; i < firstGroup.length; i++) { var row = new Object(); row.Name = txtName; row.fullMoney = firstGroup[i].value; row.discount = secondGroup[i].value; dtb.push(row); } return dtb; } 把数组转换成json串传入到后台: [html] 代码如下: $(function () { //点击botton1 $("#lbtnOK").click(function () { var url = "DiscountManger.aspx?ajax=1"; var dtb = generateDtb(); // var strName = document.getElementById("txtName").value; if (dtb == null) { } else { //序列化对象 var postdata = JSON.stringify(dtb); //异步请求 $.post(url, { json: postdata }, function (json) { if (json) { jBox.tip("添加成功!", "提示"); location.reload(); } else { jBox.tip("添加失败!", "提示"); location.reload(); } }, "json") } }); }); $(function () { //点击botton1 $("#lbtnOK").click(function () { var url = "DiscountManger.aspx?ajax=1"; var dtb = generateDtb(); // var strName = document.getElementById("txtName").value; if (dtb == null) { } else { //序列化对象 var postdata = JSON.stringify(dtb); //异步请求 $.post(url, { json: postdata }, function (json) { if (json) { jBox.tip("添加成功!", "提示"); location.reload(); } else { jBox.tip("添加失败!", "提示"); location.reload(); } }, "json") } }); }); 在后台的操作: 首先判断是否需要传输数据 [html] 代码如下: if (!IsPostBack) { //判断是否异步请求 if (Request.QueryString["ajax"] == "1") { ProcessRequest(); } if (!IsPostBack) { //判断是否异步请求 if (Request.QueryString["ajax"] == "1") { ProcessRequest(); } 在这里进行对数据的处理: [html] 代码如下: ////// 处理异步请求 ///private void ProcessRequest() { //存入要填写的策略 ArrayList arrDiscount = new ArrayList(); Response.ContentType = "text/html"; string json = Request.Form["json"]; //反序列化DataTable if (json == null) { return; } else { DataTable newdtb = Json2Dtb(json); for (int i = 0; i < newdtb.Rows.Count; i++) { Entity.StrategyDiscount enStrategyDiscount = new Entity.StrategyDiscount(); //打折方案名 enStrategyDiscount.name = newdtb.Rows[i]["Name"].ToString(); //商店ID enStrategyDiscount.shopId = long.Parse(LoginInfo.ShopID); enStrategyDiscount.fullMoney = Convert.ToDecimal(newdtb.Rows[i]["fullMoney"].ToString()); enStrategyDiscount.discount = Convert.ToDecimal(newdtb.Rows[i]["discount"].ToString()); //写入数据到数组 arrDiscount.Add(enStrategyDiscount); } //写入数据到数据库 IStrategyBLL strategy = new StrategyBLL(); if (strategy.AddStrategyDiscount(arrDiscount)) { Response.Write("true"); Response.End(); } else { Response.Write("false"); Response.End(); } } ////// 处理异步请求 ///private void ProcessRequest() { //存入要填写的策略 ArrayList arrDiscount = new ArrayList(); Response.ContentType = "text/html"; string json = Request.Form["json"]; //反序列化DataTable if (json == null) { return; } else { DataTable newdtb = Json2Dtb(json); for (int i = 0; i < newdtb.Rows.Count; i++) { Entity.StrategyDiscount enStrategyDiscount = new Entity.StrategyDiscount(); //打折方案名 enStrategyDiscount.name = newdtb.Rows[i]["Name"].ToString(); //商店ID enStrategyDiscount.shopId = long.Parse(LoginInfo.ShopID); enStrategyDiscount.fullMoney = Convert.ToDecimal(newdtb.Rows[i]["fullMoney"].ToString()); enStrategyDiscount.discount = Convert.ToDecimal(newdtb.Rows[i]["discount"].ToString()); //写入数据到数组 arrDiscount.Add(enStrategyDiscount); } //写入数据到数据库 IStrategyBLL strategy = new StrategyBLL(); if (strategy.AddStrategyDiscount(arrDiscount)) { Response.Write("true"); Response.End(); } else { Response.Write("false"); Response.End(); } } 这里,我们需要把json转换成datatable [html] 代码如下: ////// Json转DataTable /////////private DataTable Json2Dtb(string json) { JavaScriptSerializer jss = new JavaScriptSerializer(); ArrayList dic = jss.Deserialize(json); DataTable dtb = new DataTable(); if (dic.Count > 0) { foreach (Dictionary drow in dic) { if (dtb.Columns.Count == 0) { foreach (string key in drow.Keys) { dtb.Columns.Add(key, drow[key].GetType()); } } DataRow row = dtb.NewRow(); foreach (string key in drow.Keys) { row[key] = drow[key]; } dtb.Rows.Add(row); } } return dtb; } ////// Json转DataTable /////////private DataTable Json2Dtb(string json) { JavaScriptSerializer jss = new JavaScriptSerializer(); ArrayList dic = jss.Deserialize(json); DataTable dtb = new DataTable(); if (dic.Count > 0) { foreach (Dictionary drow in dic) { if (dtb.Columns.Count == 0) { foreach (string key in drow.Keys) { dtb.Columns.Add(key, drow[key].GetType()); } } DataRow row = dtb.NewRow(); foreach (string key in drow.Keys) { row[key] = drow[key]; } dtb.Rows.Add(row); } } return dtb; } 这样,就可以把数据无刷新的写入到数据库。 当然,如果我们有一个从数据库读取的datatable,如果通过json显示在前台呢。 首先,我们需要把datatable转换为json数据 [html] 代码如下: ////// DataTable转Json /////////private string Dtb2Json(DataTable dtb) { JavaScriptSerializer jss = new JavaScriptSerializer(); ArrayList dic = new ArrayList(); foreach (DataRow row in dtb.Rows) { Dictionary drow = new Dictionary(); foreach (DataColumn col in dtb.Columns) { drow.Add(col.ColumnName, row[col.ColumnName]); } dic.Add(drow); } return jss.Serialize(dic); } ////// DataTable转Json /////////private string Dtb2Json(DataTable dtb) { JavaScriptSerializer jss = new JavaScriptSerializer(); ArrayList dic = new ArrayList(); foreach (DataRow row in dtb.Rows) { Dictionary drow = new Dictionary(); foreach (DataColumn col in dtb.Columns) { drow.Add(col.ColumnName, row[col.ColumnName]); } dic.Add(drow); } return jss.Serialize(dic); } 然后写回到前台 [html] 代码如下: ////// 处理异步请求 ///private void ProcessRequest() { Response.ContentType = "text/html"; string json = Request.Form["json"]; //反序列化DataTable DataTable newdtb = Json2Dtb(json); //序列化DataTable为JSON string back = Dtb2Json(newdtb); Response.Write(back); Response.End(); } ////// 处理异步请求 ///private void ProcessRequest() { Response.ContentType = "text/html"; string json = Request.Form["json"]; //反序列化DataTable DataTable newdtb = Json2Dtb(json); //序列化DataTable为JSON string back = Dtb2Json(newdtb); Response.Write(back); Response.End(); } 在前台接受显示: [html] 代码如下: $(function() { //点击botton1 $("#botton1").click(function() { createTable(json); }); }); //显示Json中的数据 function createTable(json) { var table = $(""); for (var i = 0; i < json.length; i++) { o1 = json[i]; var row = $(""); for (key in o1) { var td = $(""); td.text(o1[key].toString()); td.appendTo(row); } row.appendTo(table); } table.appendTo($("#back")); } $(function() { //点击botton1 $("#botton1").click(function() { createTable(json); }); }); //显示Json中的数据 function createTable(json) { var table = $(""); for (var i = 0; i < json.length; i++) { o1 = json[i]; var row = $(""); for (key in o1) { var td = $(""); td.text(o1[key].toString()); td.appendTo(row); } row.appendTo(table); } table.appendTo($("#back")); } 这样,就完成了json向后台传输数据和显示后台数据了,当然,这种传输方式只是传输的一种,如果是简单的字符串也可以用get和post进行传输,但是,javascript本身具有不安全性和不稳定行,对于一些比较重要的数据,建议还是寻找一些更可靠的方法。

SPI (SERIAL PERIPHERAL INTERFACE)中的NSS信号作用?

SPI是一种总线接口,还有I2C,USART,USB,PCI-E等等总线。具体应用我也不熟,期待高手解答

javascript如何动态加载表格与动态添加表格行_javascript技巧

一、动态加载表格 1.首先在html中为表格的添加位置设置id 即是在html的body标签内部写一个div标签表明表格要添加到此div的内部。如下 2.在javascript中写添加表格的语句 若在当前html文件中,则写在标签内部,如 代码如下: document.getElementById("tbl").innerHTML="" //此处添加的表格可根据自己需要创建 若是通过引入js文件,则在js文件(假设是test.js)中直接写如下语句 代码如下: document.getElementById("tbl").innerHTML="" 然后再引入自己的html文件 代码如下: 二、 动态添加表格行 1.首先在html中为表格行的添加位置设置id,此位置必须是内部(不是特别准确,但根据我的测试就得到此结论,有其他的方法请留言,谢谢),如下 代码如下: //tfoot与thead是与tbody配套使用,但我在写的时候,没用也可以。 [sS ]* 2.在javascript内容中,要先创建行和单元格,再在中添加行,如下 [code] row=document.createElement("tr"); //创建行 td1=document.createElement("tr"); //创建单元格 td1.appendChild(document.createTextNode("content")); //为单元格添加内容 row.appendChild(td1); //将单元格添加到行内 document.getElementById("rows").append(row); //将行添加到中 三、我的小发现(也许别人早知道了、、、) 1. 我自己做了一下测试,html中写",测试可以添加内容。 3.思考:从上面两个测试似乎可以得出点什么结论,该如何总结还没想好,哪样的标签可以直接通过innerHTML直接添加呢?

什么是MSP430的peripherals

Timer、AD、DMA、FLASH等算为外围设备。

如何解决ExtendScript Toolkit无法正常使用

该脚本拓展工具包的某些功能不可用在这里,对象模型查看器无法使用。这会导致某些功能异常,比如,在输入代码时该有的提示没有出现而正常使用的时候,它是有输入提示的,类似于VS 2010里面的插件“Visual_Assist_X”,这个对代码的输入与检查的作用是非常大的。少了这些提示,会多走许多弯路呢。下面是正常使用时如下:导致它出现的根本原因是缺少了对象模型查看器的一些重要配置文件,以下情况下会导致它的缺失:一:使用了绿色版的脚本拓展工具包(ExtendScript Toolkit),而且里面缺少了一些重要文件,可能是绿化作者没有注意到而导致的异常。二:安装了脚本拓展工具包,但是由于某些原因(如,病毒、系统运行异常、清理垃圾……)把那些文件给清除了。解决方法是,将它所缺失的文件找回来,主要是两个文件夹(“APE”、“Scripting Dictionaries XXX”),按提示将需要的文件夹拷贝到相应的目录即可。最终,在”C:Program Files (x86)Common FilesAdobe”目录下应该有这两个文件将这些文件放置到正确的位置之后,就可以看到对象模型查看器能够正常使用了(我们在编写Adobe脚本的时候,通过这个对象模型查看器可以查阅所需要的API、方法了),而且代码的输入提示也有了。

什么是ExtendScript Toolkit谢谢了,大神帮忙啊

ExtendScriptToolkit2CS时代就有的一个脚本编写工具,可以为你的PS写脚本,只要保存了,就可以为PS增加不错的功能,如将几十个图片批量做成一种式样,比PS自带的批量操作厉害得多,只要你懂编程。photoshop的辅助工具HKEY_LOCAL_MACHINESOFTWAREAdobeExtendScriptToolkit这个注册表键值删除其它你搜索下还有什么相关的删除吧!查看原帖>>

如何在父窗口中得知window.open()出的子窗口关闭事件_javascript技巧

代码如下: var timer var winOpen function IfWindowClosed() { if (winOpen.closed == true) { document.fm_Info.txtValue.value="child closed" window.clearInterval(timer) } } document.fm_Info.txtValue.value="" winOpen=window.open("child.htm","","toolbar=no, location=no, directories=no, status=no, menubar=no" ) timer=window.setInterval("IfWindowClosed()",500);

如何用javascript在一个新IE窗口中打开一个新页.

<script language="javascript">function openwin(){window.open("moveby.html");}</script><input type="button" value="Open Window" onclick="openwin()">

rhinoscript在哪里打开

月底的Rhino/Grasshopper要开班了,忽然有点感慨。曾经写过无数的Rhino脚本,代码量远超CorelDraw插件,年轻时的狂热自己都感动。不敢说是否Rhino国内第一人,前5总是排得进去的,因为那时连一个可以交流的伙伴都找不到。孤独地开始,孤独地前行。以下的几期教程是2007年写的,是一本书的一部分,书是跟国防工业出版社签的一部教程,后来各种忙,书也没能写完,很对不起国防工业。如果时间够用,我还是希望能把这个教程写完,即使有信心学它的设计师没几个。这算是给自己一个交代吧。再说,大量的旧货也该整理一下放出来交给用得着的人了。有些代码由于Rhino系统升级和内部函数的变化已经无法正常运行了,也准备花点时间重新修订一下。Rhino插件开发:Rhino脚本教程(1)第1章 Hello World!脚本语言是一种编程语言。与VB、VC++等大型编程语言相比,脚本语言编写的程序一般不是可以独立运行的exe可执行文件,而只能依附与某一软件平台,在该软件的环境下运行。因此,多数脚本语言是为某一软件量身定做的。脚本语言面向的对象大多是软件的使用者而不是专业的软件开发人员,因此程序结构简单,大多是文本文件,不需要编译即可直接运行。有些脚本甚至也不做语法检查,运行到有错误的地方才停下来,如AutoCAD的脚本AutoLisp。对3D造型软件来说,脚本语言的用途在于拓展软件的造型功能,实现一些复杂的或有规律的形态设计任务,或完成一些靠菜单按钮和鼠标操作难以实现的建模任务。举例来说,脚本可以完成的任务有下面一些:1)做100个球体,让他们成螺旋状排列;2)做100个大小形状都随机的杯子;3)在水中投入三个石子,泛起干涉涟漪,做出这个波纹曲面;4)做一个藤编的花篮,每一根藤条都要做出来;5)从.txt或.xls文档中获取出点坐标数据,并用于曲面造型;……Rhino的脚本语言称为Rhino,它的语法格式与VB完全相同。Rhino内部为该脚本语言设置了若干函数(如Rhino 4.0是724个函数)用以完成各种3D造型任务。本书假设读者对编程没有任何经验,因此实例和解释都从最基础的开始。如果有读者已经是编程高手,这些粗浅的解释可以略过不看了。为了对Rhino脚本的使用方法有一个大致的了解,我们写个程序来执行一个著名的任务。这个程序只有一行:MsgBox "HelloWorld!"这个只有一行的程序代替Rhino问候人类世界,方式是弹出一个对话框,显示一句话:Hello World!。这个程序运行后在Rhino的界面上出现一个对话框:我们将在下节围绕这句友好的问候做一些更细致的工作。我们先把这行字保存起来。为了让Rhino知道这行字是一条指令,还是有些必要的情况需要注意的:1)引号必须是英文引号,因为Rhino不认识任何中文字符,包括中文标点,但引号里面的内容可以是任何语言;2)保存为扩展名为.rvb的文本文件,因为Rhino只执行这种格式的指令。现在我们把这个程序在Rhino中运行一次,来认识一下Rhino执行rvb脚本的过程。执行脚本程序的操作命令在Rhino的Tools菜单下的Rhino子菜单中:▼Rhino程序的起动菜单rvb脚本的操作命令有3个:加载程序(Load),运行程序(Run)和编辑程序(Edit)。Load命令可以加载一个rvb程序,执行后弹出如图所示的对话框。加载一段rvb程序的操作顺序如下:1)点Add按钮从标准文件列表框中选择扩展名为.rvb的文件,确定后文件的全路径显示在左侧列表框中,如图所示。可以反复使用Add按钮添加多个.rvb文件。2)点击选择所要载入的rvb文件,按Load按钮载入。载入后加载对话框消失,Rhino开始执行该rvb文件中的程序。我们这个程序执行后在屏幕上显示前面所示的消息框。Remove按钮可以从文件列表中删除选中的rvb文件——只是从左边框里删除,文件仍然存在。Edit按钮可以打开选中的rvb文件并进行编辑。Close按钮关闭对话框。Run命令可以执行rvb脚本中定义的子过程,执行后弹出如下对话框:▼Run命令界面我们这个只有一行的程序里没有定义任何子过程,因此左边框里是空的。子过程的定义方法后面会详细提到。Edit命令可以打开rvb文件进行编辑,并随时运行。执行Edit命令后弹出如下对话框。▼Edit命令界面Merge按钮可以从文件列表中选择rvb文件并将程序内容插入到左侧编辑框中当前光标位置,当编辑框为空时相当于打开一个新文件。按Merge按钮并选择我们的程序文件,可以在左边看到我们写过的程序,如图所示。VB和Rhino内部定义好的命令(称为“保留字”,编程的时候不能使用这些保留字为变量名)用蓝色显示出,我们可以在这里修改我们的程序。▼用Edit命令编辑HelloWorld程序Save按钮保存当前编辑的rvb文件。Run按钮执行当前编辑框中的rvb文件,其作用相当于Load按钮。右下方的图钉图标按下后可以在执行当前文件时保持编辑框为打开状态,否则按下Run按钮后编辑框消失。rvb程序是一个文本文件,因此用ASCII码文本文件编辑器就可以编写了,如Windows自带的记事本。记事本对于编写RVB程序并不是一个很好的工具,这里作者推荐的一个文本编辑软件是EditPlus。EditPlus中有VB模板,使用该模板编写RVB程序可以得到清晰的界面显示,各种保留字都显示以不同的色彩,非常方便:▼EditPlus编辑界面为了进一步巩固刚刚建立起来的信心,我们再来编写一个同HelloWorld一样简单的程序,这次要让Rhino建立一个球体。Rhino.AddSphereArray(0,0,0), 5.0把上面这行程序保存Ex1-2Ball.rvb,用执行Ex1-1HelloWorld.rvb同样的方法执行一遍,会发现在坐标原点位置出现了一个球体。我们来看看这行简单的程序如何做到这点的。这行程序有三段:第一段Rhino.AddSphere是函数名,它告诉Rhino我们要建立一个球体;第二段Array(0,0,0)和第三段5.0称为参数,它们告诉Rhino我们要建立一个什么样的球体:Array(0,0,0)表示球心坐标,5.0表示球的半径;参数之间用英文逗号隔开。如果想建一个不同大小的球,只要把5.0改一下就行了——注意,半径必须大于零。可能我们的读者还觉得不过瘾:要是能够随心所欲的建立大小不一的球而不用每次都改程序就好了。实现这个功能的程序也只有一行:Rhino.AddSphereArray(0,0,0), Rhino.RealBox ("输入球体半径", 5.0 )运行这个程序,会弹出一个对话框:在程序中我们用Rhino.RealBox ("输入球体半径", 5.0 )代替了半径值5.0。Rhino.RealBox和Rhino.AddSphere一样是一个函数,其作用就是弹出一个对话框,然后把用户输入的数值告诉函数Rhino.AddSphere。这个函数有两个参数,“输入球体半径”表示显示在对话框上的提示文字,5.0表示默认的半径值。这个函数的返回值就是用户的输入,如果用户没有输入,则返回默认值。点击OK后,在坐标原点位置会出现一个以用户输入值为半径的球体。相信到这里有些人已经开始雄心万丈了,既然能随心所欲的建立球体,那么建立一辆汽车应该方式也差不多。是这样。这个只有一行的程序具备了一个插件模块的基本功能:用户数据的输入和造型系统的响应。大型插件的功能也不过是更多的输入数据和更复杂的系统响应而已,比如输入姿态参数构造一个人体模型。我们将在后面的章节中逐步讲解如何让这个只有一行的程序发展成一个功能丰富的插件。这里还有一个不太如意的地方:每次都从菜单进入我们的程序显然太麻烦了,而且也不够酷,要是能在界面上拥有一个按钮就好了。现在我们就专为这个程序建一个按钮放在界面上。这个工作与编程无关,但显然是大家都有兴趣知道的。从Tools菜单下的Toolbar Layout项进入工具条设置界面:▼工具条设置界面▼建立新工具条用Toolbar菜单下的new命令建一个新的工具条,设置工具条的名字和大小,如上图。按“确定”生成工具条,新工具条的名称显示在工具条列表框里,现在它可以像所有的其他工具条一样使用了。新工具条只有一个按钮,如果想增加按钮,在工具条列表中右击新工具条,从弹出菜单中选择“Add Button”。关闭工具条界面,把新工具条拖动到你想要他呆的位置。现在工具条上的按钮是空白的,点击也不会有任何反应。现在我们给工具按钮设置任务。按住Shift键点击按钮,出现如图所示界面:▼按钮设置界面一个按钮可以设置两个指令,分别用左键和右键操作,左右键的指令分别写在下方两个框内。这个按钮我们只设置一个质量,写作左边框里,用鼠标左键操作,指令如下:-Load "F:RhinoPublishExamplesEx1-3Ball.rvb"Load是Rhino的命令,在运行脚本程序的时候可以看到它显示在命令行中。前面的短横线(减号)表示执行Load命令但是不弹出对话框。因为弹出对话框就必须通过用户响应关掉它才能进行下一步动作,这是我们不希望的,我们要让后面的工作自动进行。实际上,这个短横线对所有的Rhino命令都起作用,可以自己试一下。命令前面加上这个短横线后,对话框中所有的选项都以字符的形式出现在命令行中。Load后面引号中的字符是我们刚编好的程序名和全路径。注意,引号中不能有任何空格,因为空格会被当作回车键来处理,空格后面的字符全部忽略。中部两个输入框是左右键的命令提示,即鼠标从按钮上滑过时显示的按钮功能提示。左上方是为这个按钮设置下拉工具条,从列表框中选择要显示的下拉工具条即可。左上方的两个按钮是为工具条设置图像,可以自己画按钮图案,也可以选择一幅位图来载入:▼设置按钮图案点击“确定”,按钮设置完毕。▼这排按钮是古建筑插件,我做的“HelloWorld”几乎是任何一个与编程打交道的人最先接触的任务,相信我们对Rhino能干什么已经有了初步的概念,即使你从来没有编写过一行程序。First thing the first先讲到这里,看几个图增强下信心,这是我的学生硕士论文里的图。▼Rhino生成的篮子▼篮子结构细节▼Rhino生成的台灯及其细节感

VBscript 如何 读取word内容(很急)

Dim wdapp As New Word.Application wdapp.Visible = False wdapp.Documents.Open filename wdapp.Selection.WholeStory copy_content = wdapp.Selection.Text wdapp.ActiveDocument.Close wdapp.Quit Set wdapp = Nothing 只可以读出文本。。。

写出下列VBscript表达式的值

1) 99 (实际上就是字母c的ASCII码)2) 5 (Len的返回值是字符个数,这里共5个字符,所以是5。跟是否汉字无关)3) 计算机网 (原理同上。这是返回左边算起的4个字符)4) False (Int(28.2+12.5)的值为40,Fix(42.35-Abs(-2))的值也是40,两边相等)

VBScript和Visual Basic有什么区别?

Visual Basic Script 是 Visual Basic 语言的一个子集合! 可以理解为 VBS是以 VB语言为基础发展出来的一种简单型的脚本语言! VB语言多用语Windows环境下的编程! 而VBS多用与ASP环境下的网页编程,主要运用就在于利用ADODB控件访问数据库,以作动态网站! 如果学会了VB,当然VBS就如同儿戏!简单的很!因为VBS是由VB发展出来的一种简单型的脚本语言,多数语法与VB类似!

VBSCRIPT的函数问题????高手进!!

LCase 是将字符串中英文字母变为小写,故在此问题中可不理会。则变成:GetContent=Right(str,Len(str)-Instr(str,start)-Len(start)+1)若str="ABCDEFGH",start="DE",则GetContent="FGH".Instr(str,start),在str里寻找start,返回4Len(start),返回start长度,即返回2.所以Len(str)返回8Len(str)-Instr(str,start)-Len(start)+1:8-4-2+1=3Right(str,Len(str)-Instr(str,start)-Len(start)+1):在str中,取右三位,即返回"FGH"总结:这条语句,是用于截取字符串中关键字后边(不包括关键字)的子字符串的。整个函数,就是用来截取字符串中关键字前(后),包括(不包括)关键字的子字符串的。

vbscript改成javascript

以前用过相信还是有点基础的,硬着头皮啃吧,相信你能行的。

vbscript.dll无法替换

1.也是最简单的一种方法,手工替换相关文件可以解决问题。在正常工作的相关软件安装目录中,找到这个msvcp71.dll文件,复制到出现问题的软件目录下,即可解决问题。 2.重新安装系统(不推荐) 3.从朋友电脑上拷贝或者到网上下载文件,放到C:WINDOWSSYSTEM32文件夹下。另外复制到X盘:游戏文件夹,如果还不行可能是文件版。

使用VBScript脚本语言编写一个函数,用来比较三个数字的大小,并返回最大值。

<script language="VBScript">Function big3(a,b,c) Dim t If a > b Then t = a Else t = b If c > t Then t = c big3 = tEnd FunctionMsgbox big3(1,2,3)</script>

vbscript如何判断所调用程序已运行完成

在第一步中用同步方式而不是异步方式调用calc.exe,则你所谓的第二步就完全可以省略了,因为同步方式在被调用的程序运行结束前会一直停在那里的,直到被调用的程序运行结束才会继续运行下面的语句的,所以可以直接进入第三步了。至于怎样用同步方式楼上的已经说了。

VBScript程序在IE浏览器中打不开程序没有错为什么啊?

首先设置你的浏览器工具==》Internet选项==》高级==》显示友好http错误信息去掉对勾!然后看vbscript写的是否正确!

无法访问自定义操作的VBScript运行时间!! 那位大虾能解决 啊?感激不尽

你装过mcafee吧,试试去注册表找到HKEY_Local_MachineSOFTWAREClassesCLSID{B54F3741-5B07-11CF-A4B0-00AA004A55E8}然后展开他右键点InprocServer32,选择权限,高级,给管理员加上权限,确定退出。把右边的Default改成C:WindowsSystem32vbscript.dll。如果是64位系统,会有三个重复的HKEY_Local_MachineSOFTWAREClassesCLSID{B54F3741-5B07-11CF-A4B0-00AA004A55E8},里面的值都要改。

VBScript中的逻辑非是怎么用的?

逻辑与:两个都真则为真,任一个为假则为假逻辑非:就是取反。你不会问这个在底层是怎么实现的吧,那个数字电路的知识。

vbscript如何实现Request.Form

vbscript是脚本语言,asp是服务段的语言,想通过脚本语言来读取服务端的,一般都是不能的,当然可能有某些高高手,其实你到底想实现什么功能呢,还是想另外的办法好,因为脚本端是直接下载到电脑运行的,安全方面也是不允许的,649081773,可以的话,我可以帮你用另外的方法解决。。

纯Vbscript如何实现文件上传?

晕,ASP的代码也是VBscript啊,

VBS和VBScript有什么区别吗?

VBS就是VBScript的缩写。一样的。

vbscript.dll的介绍

vbscript.dll是VBScript脚本相关支持文件。

请问 vbscript 如何打开记事本?

运行notepad.exe

vbscript脚本中换行如何实现

vbcrlf

在VBScript中怎么 调用子程序啊?

或者WSH.run "cmd.exe"

在vbscript中怎么调用javascript函数

直接调用!JavaScript 可以调用 VBScript 内的函数和变量,VBScript 也可以调用 JavaScript内的函数和变量。所要说明的是,这里指的函数和变量均指自定义函数和变量,而不是该语言自带的函数和变量,要调用自带函数或变量应该先用自定义函数或变量将其包装起来。并且这种调用只在 IE 浏览器里有效。比如:JavaScript 里没有 IsDate 这个函数,VBScript 里有,要在 JavaScript 里使用这个函数,就得写一个 VBScript 脚本,内容可以是:function IsDate_VBS(dt)IsDate_VBS = IsDate(dt)end function在 JavaScript 里面,再直接使用 IsDate_VBS 函数就可以了。另外,同样要说明的是,跟只用一门语言相同,函数或变量应该先定义再使用,即定义体应该位于调用之前。通过互相调用可以使两门语言达到优势互补。在某些浏览器中可能不支持 VBScript。

vbscript 函数定义关键字是什么?

用 Dim 声明-----------------VBScript 变量什么是变量?变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更改的程序信息。例如,可以创建一个名为 ClickCount 的变量来存储用户单击 Web 页面上某个对象的次数。使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引用变量就可以查看或更改变量的值。在 VBScript 中只有一个基本数据类型,即 Variant,因此所有变量的数据类型都是 Variant。声明变量声明变量的一种方式是使用 Dim 语句、Public 语句和 Private 语句在 VBScript 中显式声明变量。例如: Dim DegreesFahrenheit声明多个变量时,使用逗号分隔变量。例如: Dim Top, Bottom, Left, Right另一种方式是通过直接在 Script 中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行 Script 时出现意外的结果。因此,最好使用 Option Explicit 语句显式声明所有变量,并将其作为 Script 的第一条语句。

VBscript脚本语言 生成表格

问题出现在:document.write("<table border="1" align="center">")如果您需要在字符串中插入引号,需要用 "" 而不是 " ,否则会被当作是字符串的结束标志而引发错误,所以这一行应该这样写:document.write("<table border=""1"" align=""center"">")此外,你的网页的字符集设置也有点问题:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />这容易使浏览器出现乱码,尤其是当你的网页被以 ANSI 编码保存而不是 UTF-8 编码,而如果使用 gb2312 字符集,则不存在这个问题:<meta http-equiv="Content-Type" content="text/html; charset=gb2312" > 而且,请你注意一点,如果需要在 HTML 标记中的某个被引号引起来的字符串中插入引号,例如在按钮的文本中插入一个引号,则应该这样:<input type="button" name="btn" id="btn" value="生成"Table"" ><input type="button" name="btn" id="btn" value="生成& quot;Table& quot;" >(& quot;就是双引号的意思,就像& nbsp;是空格的意思一样)(我在 & 后面加了一个空格,你在用的时候要删去,这是为了防止百度把它给转换掉了……)或是这样:<input type="button" name="btn" id="btn" value="生成"Table"" >前者插入双引号,后者插入单引号,但是不能这样:<input type="button" name="btn" id="btn" value="生成""Table""" >

VBScript用来系统管理任务,VBScript能做的事情PowerShell是不是都可以做?

对,VBScript可以做的,PowerShell一定可以做。PowerShell的诞生就是为了取代VBScrip的。即使已有的VBscript,你不想把它替换成PowerShell,VBscript也是可以在PowerShell中运行的。

谁能讲解一下javascript和vbscript如何用?以及它们的区别?

javascript用于客户端,而vbscript用于服务器端这句话只是常规的说法。javascript客户端只是指包含在html页面中的脚本类型一般为javascript.但是用vbscript,ecmascript等其它脚本语言也是可以编写客户端脚本的.vbscript用于服务器端指的是用vbscript编写的asp页面.asp在这里指active Server page 动态页面的意思。它的功能就是在服务器端运行指令,并将结果输出到客户端.vbscript只是asp常用的语言,用javascript或jscript等其它语言其实也可以编写asp页面,只是不常用罢了.下面给你个页面例子:==============asp页面===============<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%><html><head><title>简单asp提交</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body><%Response.Write(Request.form("txt"))%><form name="tst" method="post" onsubmit="return ck(this)"><textarea name="txt" style="width:500px;height:200px"></textarea><input type="submit" value="提交" /></form><script type="text/javascript">function ck(f){if(f.txt.value==""){alert("请输入些内容再提交")return false}}</script></html>以上是asp文件内你看到的内容,当用户访问它的时候,它将由iis解析,并返回标准html给浏览器.返回给浏览器的页面代码可能像下面这样<html><head><title>简单asp提交</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body><form name="tst" method="post" onsubmit="return ck(this)"><textarea name="txt" style="width:500px;height:200px"></textarea><input type="submit" value="提交" /></form><script type="text/javascript">function ck(f){if(f.txt.value==""){alert("请输入些内容再提交")return false}}</script></html>在这里<%%>这里面的内容默认为<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>这里声明的语言和编码.这里是vbscript,简体中文服务器会运行<%%>内的代码,并输出结果插入到相应位置,最终返回给浏览器的代码已经不再包含<%%>了<%%>这种标签只是常规写法,当然也可以写<script language="vbscript" runat="server">表示在服务器端运行的脚本如果你在以上测试页面的文字框里没有输入东西就点击提交,页面不会提交,并弹出一个对话框,这个验证动作就是由javascript客户端完成的,当你输入内容后,验证通过,表单也就提交了。<%Response.Write(Request.form("txt"))%>这一句会把你提交的内容输出到页面上.浏览器所接收的页面内容也就和刚开始的有些变化了.这就是动态页面的特点

请问这个有vbscript.dll这个东西,但是就是打不开是什么原因?

Regsvr32命令修复系统故障实例使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。2000系统的regsvr32.exe在winntsystem32文件夹下;WInXP系统的regsvr32.exe在windowssystem32文件夹下regsvr32的用法为:"regsvr32 [/s] [/n] [/i(:cmdline)] dllname”。其中dllname为activex控件文件名,建议在安装前拷贝到system文件夹下。参数有如下意义:/u——反注册控件/s——不管注册成功与否,均不显示提示框/c——控制台输出/i——跳过控件的选项进行安装(与注册不同)/n——不注册控件,此选项必须与/i选项一起使用执行该命令的方法:1、可以在“开始”--“运行”,调出运行的对话框,也可以使用Win+R热键,然后直接在输入栏输入即可2、在开始--运行 输入cmd,调出‘命令提示符"窗口,然后再执行regsvr32命令。二、Regsvr32错误消息的说明当使用 Regsvr32.exe 时,它会尝试加载该组件并调用它的 DLLSelfRegister 函数。如果此尝试成功,Regsvr32.exe 会显示一个指示成功的对话框。如果此尝试失败,Regsvr32.exe 会返回一条错误消息,其中可能会包括一个 Win32 错误代码。以下列表介绍了 RegSvr32 错误消息和可能的原因。Unrecognized flag:/invalid_flag键入的标志或开关组合无效(请参阅本文中的“Regsvr32.exe 的用法”一节)。No DLL name specified.未包括 .dll 文件名(请参阅本文中的“Regsvr32.exe 的用法”一节)。Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.Dllname不是.dll 或.ocx 文件。例如,键入 regsvr32 wjview.exe 就会生成该错误消息。例如,键入regsvr32 icwdial.dll 后就会返回该错误消息,因为 Icwdial.dll 文件不能自行注册。如果您怀疑内存中有损坏的Dllname 版本,请尝试重新启动计算机,或重新提取该文件的原始版本。如果您运行的是 Windows NT,可能需要使用 Microsoft Windows NT Server 4.0 资源工具包 中的 Kill 或 Pview 工具。有关其他信息,请单击以查看以下 Microsoft 知识库文章:197155 如何终止孤立进程OleInitialize failed (or OleUninitialize failed).Regsvr32 必须先初始化 COM 库,然后才能调用所需的 COM 库函数并在关闭时撤消对该库的初始化。一、轻松修复IE浏览器regsvr32 Shdocvw.dllregsvr32 Oleaut32.dllregsvr32 Actxprxy.dllregsvr32 Mshtml.dllregsvr32 Urlmon.dllregsvr32 browseui.dll作用:1、同时运行以上命令不仅可以解决IE不能打开新的窗口,用鼠标点击超链接也没有任何反应的问题;2、还能解决大大小小的其它IE问题,比如网页显示不完整,JAVA效果不出现,网页不自动跳转,打开某些网站时总提示‘无法显示该页"等。二、解决Windows无法在线升级的问题regsvr32 wupdinfo.dll作用:Windows的漏洞很多,每隔一段时间就需要使用“Windows Update”升级程序进行在线升级,不过“Windows Update”经常出现无法使用的情况,这时,我们可以使用Regsvr32来解决这个问题。三、防范网络脚本病毒有新招regsvr32 /u scrrun.dll作用:网络脚本病毒嵌在网页中,上网时在不知不觉中机器就会感染上这种病毒。笔者认为单纯使用杀毒软件并不能有效地防范这些脚本病毒,必须从病毒传播的机理入手。网络脚本病毒的复制、传播都离不开FSO对象(File System Object,文件系统对象),因此禁用FSO对象就能有效地控制脚本病毒的传播。如果需要使用FSO对象,键入“regsvr32 scrrun.dll”命令即可。四、卸载Win XP自带的ZIP功能regsvr32 /u zipfldr.dll作用:Win XP以功能强大而著称,但有些功能却常常令人有“鸡肋”之感,比如Win XP自带的ZIP功能和图片预览功能,不仅占用了系统资源,功能也远不如第三方软件强大。其实用Regsvr32命令可以很容易地卸载这些功能。五、修复无法缩略图查看文件问题2000: 开始→运行,输入regsvr32 thumbvw.dllXP: 开始→运行,输入regsvr32 shimgvw.dll六、让WMP播放器支持RM格式很多朋友喜欢用Windows Media Player(以下简称WMP)播放器,但是它不支持RM格式,难道非得安装其它播放软件吗?笔者有办法。以Win XP为例,首先下载一个RM格式插件,解压缩后得到两个文件夹: Release(用于Windows 9x)和Release Unicode (用于Windows 2000/XP);将Release Unicode文件夹下的RealMediaSplitter.ax文件拷贝到“系统盘符WINDOWSSystem32”目录下;在“开始→运行”中键入“regsvr32 RealMediaSplitter.ax”,点击“确定”即可。接着下载解码器,如Real Alternative,安装后就能用WMP播放RM格式的影音文件了。七、让WMP9的播放器出现有些音乐网页的在线点歌需要用到Media Player,有的朋友明明安装了WMP9,但在线听音乐却只看到枯燥的WMP6播放器面板,想让漂亮的WMP9面板出现,当然没问题的。常见问题的操作系统多数WIN 98,先关闭IE,再在“开始→运行”中键入“regsvr32 wmpdxm.dll”,点击“确定”即可。八、解决打开系统功能时无反应regsvr32 shdocvw.dll作用:有时从开始菜单里点击XP系统的搜索功能、帮助和支持或管理工具等,但就是无任何反应,这是它们的打开方式缺少关联,所以我们只要用regsvr32注册它们需要调用的动态连接库文件就行了。九、添加/删除程序打不开了regsvr32 appwiz.cplregsvr32 mshtml.dllregsvr32 jscript.dllregsvr32 msi.dllregsvr32 "c:program filescommon filessystemole dboledb32.dll"regsvr32 "c:program filescommon filessystemadomsado15.dll"regsvr32 mshtmled.dllregsvr32 /i shdocvw.dllregsvr32 /i shell32.dll作用:当打开控制面板中的添加/删除程序时,双击它的图标后无反应,或者打开后自动关闭了,尝试使用以上命令可以解决。十、XP的用户帐户打不开regsvr32 nusrmgr.cplregsvr32 mshtml.dllregsvr32 jscript.dllregsvr32 /i shdocvw.dll十一、防范网络脚本病毒有新招regsvr32 /u scrrun.dll 禁用FSO对象regsvr32 scrrun.dll 使用FSO对象十二、解决Windows无法在线升级的问题regsvr32 wupdinfo.dll以下症状我把它称作IE的活动脚本漏洞,虽然这两个命令能修复,但治标不治本,我建议遇到此问题的朋友到微软网站进行IE安全更新,即打漏洞补丁。regsvr32 jscript.dllregsvr32 vbscript.dll作用:1、跟上面讲的修复IE浏览器方法配合使用(可以不配),可以很好的解决浏览某些网页无法正常显示和功能不正常,如:a.不显示某些验证码b.不显示某些动态图片c.不显示某些论坛的帖子列表d.论坛快速跳转功能无用e.论坛发贴时按Ctrl+Enter提交无反应2、修复个别窗口空白,如XP的‘搜索"功能的搜索助理操作面板空白、系统还原页面空白和用户帐户页面空白等。(可修复把握度100%)3、解决windows media player 9或以上版本打开时提示‘出现内部应用程序错误"。(可修复把握度100%)4、可以修复win 2000的‘添加/删除程序"打开后一片空白。(可修复把握度99%)5、解决win 2000以WEB方式查看Program Files文件夹和Winnt文件夹时看不到任何文件,以及‘控制面板"的图标跑到左边去的问题。6、解决网页上网际快车的右键菜单功能无法使用。在网站中,当右键点某个‘下载连接"时,会弹出菜单,选择‘使用网际快车下载"会再弹出FLASHGET的下载任务页面,如果发现该功能无反应,那就可能是这个原因:原来这项菜单是调用了FLASHGET目录下的jc_link.htm文件,这个文件是用VB语言编写的,所以其作用丢失是动态连接库vbscript.dll没有注册和调用到。不过这只是原因之一.

vbscript 中 两个数值 用and是什么意思

这里的 and 是按位与操作10 的二进制为 1010,3 的二进制为 0011,按位与得:10100011----00100010 即为二进制的2.按位与规则:1 and 1 = 11 and 0 = 00 and 1 = 00 and 0 = 0

vbscript中&的使用

&为连接符 作用是链接 字符串或变量<font size=" & i & "> 结构其实要这样看(<font size =") 加i的值 加(">)

用vbscript遍历数组

用记事本编辑*.vbs 写入以下代码,可双击文件运行。dim arr(3)arr(0)="a"arr(1)="b"arr(2)="c"arr(3)="d"for each i in arrmsgbox""&i&""next

vbscript中回车换行问题

楼上的我试过不行,运行显示空白。"<br />"两边加引号是在ASP文件中作为字符串输出的回车换行符,而在VB脚本中不能使用

asp 和 vbscript

ASP=ACTIVE SERVER PAGE,动态脚本包括javascript,vbscript.附加HTML标记来实现动态页面。vbscript语句使用<%%>在ASP中进行标识。至于VBSCRPT的编写习惯不一样,当然你看到的可能是不一样的。

VBScript中怎样对文本文件里读写数据

分类: 电脑/网络 >> 程序设计 >> 其他编程语言 问题描述: 对该文本文件多次写入数据时不影响之前写入的数据; 读数据是只读取文本中指定行的部分数据? 谢谢 解析: 用FileSystemObject对象创建一个TextStream便实现对文本文件的读写 --------------------------------------------------- 创建指定文件并返回 TextStream 对象,该对象可用于读或写创建的文件。语法 object.CreateTextFile(filename[, overwrite[, unicode]]) CreateTextFile 方法的语法有以下部分: object 必选项。应为 FileSystemObject 或 Folder 对象的名称。 filename 必选项。字符串表达式,指明要创建的文件。 overwrite 可选项。Boolean 值指明是否可以覆盖现有文件。如果可覆盖文件,该值为 True;如果不能覆盖文件,则该值为 False 。如果省略该值,则不能覆盖现有文件。 unicode 可选项。Boolean 值指明是否以 Unicode 或 ASCII 文件格式创建文件。如果以 Unicode 文件格式创建文件,则该值为 True;如果以 ASCII 文件格式创建文件,则该值为 False。如果省略此部分,则假定创建 ASCII 文件。 说明 以下代码举例说明如何使用 CreateTextFile 方法创建并打开文本文件: Sub CreateAfile Dim fso, MyFile Set fso = CreateObject("Scripting.FileSystemObject") Set MyFile = fso.CreateTextFile("c: estfile.txt", True) MyFile.WriteLine("这是一个测试。") MyFile.Close End Sub 对于 filename 已经存在的文件,如果 overwrite 参数为 False,或未提供此参数时,则会出现错误。 ----------------------------------------------------------- 描述 打开指定的文件并返回一个 TextStream 对象,可以读取、写入此对象或将其追加到文件。 语法 object.OpenTextFile(filename[, iomode[, create[, format]]]) OpenTextFile 方法的语法有以下部分: object 必选项。应为 FileSystemObject 对象的名称。 filename 必选项。字符串表达式,指明要打开的文件名称。 iomode 可选项。输入/输出模式,是下列三个常数之一:ForReading,ForWriting,或 ForAppending。 create 可选项。Boolean 值,指出当指定的 filename 不存在时是否能够创建新文件。允许创建新文件时为 True,否则为 False。默认值为 False。 format 可选项。三个 Tristate 值之一,指出以何种格式打开文件。若忽略此参数,则文件以 ASCII 格式打开。 设置 iomode 参数可为下列设置之一: ForReading 1 以只读模式打开文件。不能对此文件进行写操作。 ForWriting 2 以只写方式打开文件。不能对此文件进行读操作。 ForAppending 8 打开文件并在文件末尾进行写操作。 format 参数可为下列设置之一: TristateUseDefault -2 以系统默认格式打开文件。 TristateTrue -1 以 Unicode 格式打开文件。 TristateFalse 0 以 ASCII 格式打开文件。 说明 以下代码举例说明如何使用 OpenTextFile 方法打开写文件: Sub OpenTextFileTest Const ForReading = 1, ForWriting = 2, ForAppending = 8 Dim fso, f Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile("c: estfile.txt", For Writing, True) f.Write "嗨,你好!" f.Close End Sub ------------------------------------------------------------- 另TextStream还有如下方法: Close 方法 Read 方法 ReadAll 方法 ReadLine 方法 Skip 方法 SkipLine 方法 Write 方法 WriteLine 方法 WriteBlankLines 方法 详细可参阅VBScript 5.0 帮助文档

VBSCRIPT中如何返回函数值

分类: 电脑/网络 >> 程序设计 >> 其他编程语言 问题描述: VBSCRIPT中如何返回函数值 谢谢 解析: sub funa() funa="a";end sub 用函数名=某个值 来返回函数值

vbscript中 & 是什么意思?

&通常是将两个字符串的值连起来,如dim a,b,ca="aaa"b="bbb"c=a & b "c="aaabbb"

vbScript中如何定义使用全局变量

call test2 function test1()dim a(1)a(0)=1a(1)=2test1=aend function function test2()b=test1msgbox b(0)end function "vbs 过程,函数里都是局部变量,需要全局变量 用函数返回值 去传递"上面给你演示 传递数组变量 如果你需要多个值的话~不需要的话就改单个变量即可

如何使用VBScript输出变量的值

On Error Resume Nextset rs=Server.Createobject("adodb.recordset")If IsObject(rs) Then Response.Write "创建对像成功!"End IfIf Err Then Response.Write Err.(属性) "请参考手册End IfOn Error Goto 0

asp和asp.net有什么区别?vbscript和javascript有什么区别?

一、ASP : Active Server Page的缩写,意为动态服务器页面。ASP是一种运行环境,这在种环境中运行 VBScript 脚本。 VBScript脚本一种面向过程的脚本语言。二、ASP.NET 是 ASP的升级版本,在这种环境中(.Net Framework)运行的是面向对象的语言,比如:C-Sharp(C#), J-Sharp(J#),VB.NET。。。等等三、Javascript : 是一种专门针对网页的,基于对象的客户端语言,比如很多网页中鼠标跟随,图片滚动等效果都是 Javascript 写的。四、VBScript : 同样可以象 Javascript 一样运行在网页的客户端,而且还可以运行在 Windows 系统中(早时的欢乐时光病毒就是VBScript开发的)。在网页中的效果和 Javascript 一样,但是比 Javascript 强大,这种语言的最大缺点是只能运行在微软的产品中,比如 IE。其他非微软的系统或浏览器产品中很少有运行该脚本的环境。这要根据你的喜好来说,我本人就是.net 的这个方便,快速,

VBscript中注释有哪些方式

只有一种就是单引号"注释多行的话只能在每一行前加上一个""材料:VBscript作为VB衍生而来的语言,其中很多地方都和VB非常相似,当然写注释也是一样的,我们在VBscript中可以使用(‘)单引号来作为注释符号,用于注释当前行,这里要注意的是,VBscript中,并没有/**/的C++中的多行注释方式。要是回答的内容有问题,或认为不妥,请发送百度消息给我。。·

vbscript与javascript有什么异同点??

大致功能差不多,但ie能通吃这两种其他浏览器有可能吃javascript而吃不下vbscript

关于VB与VBScript的问题

补充:VBScript只是一种脚本语言,只是它的语法和VB是一样的,所以叫VBScript 独立的脚本语言什么都做不了,仅当其存在于某个宿主环境中时才能起作用,所以基本上脚本语言都没有自己的输入输出语句,它们只定义了语法。 换句话说,脚本语言是用来控制宿主环境的已有功能的。宿主环境决定了脚本语言的作用。 比如在服务器端环境下,VBScript可以用response对象,用来输出Html到页面,有request对象,用来获取网页数据。 在客户端浏览器环境下,VBScript可以用document.write来向页面写入数据。 这里的response或者document对象都是宿主环境提供的,和VBScript本身一点关系都没有,它们同样可以用于其他的脚本语言,比如javascript。 而VB是一种编译型语言,它没有宿主环境的概念,和C++,C#是属于同一个范畴的。求采纳

vbs是不是VBScript

vbs是脚本文件

VBScript 脚本文件相对路径的问题

用savesetting()和getsetting()可以实现

regsvr32 vbscript.dll

开始--运行 输入regsvr32 vbscript.dll回车即可如果提示无法注册成功 请在C:WINDOWSsystem32检查是否有vbscript.dll如果没有请到其他的电脑上面或者网络上面下载 放在同一个目录 重新注册一次

vbscript提取表单的数据

if thisForm1.checktype.value1="1" then thisForm1.action="chklogin1.asp?action=P" end if if thisForm1.checktype.value1="0" then thisForm1.action="chklogin1.asp?action=C" end if 这两句..中的..thisForm1.checktype.value1="1"怎么是value1..

vbscript 能在linux运行吗?

不能!!!!!!!!!!

如何使用vbscript中的msgbox函数

<SCRIPT LANGUAGE="VBScript"><!--sub ChkPROC() iSel = MsgBox ("Your msg",vbOKCancel) If iSel = 1 Then "" OK, then continue MsgBox "your selected ok!" End If "" false hereEnd SubCall ChkPROC()//--></SCRIPT>

vbscript怎么定义字符串

vbscript不是强类型语言 你直接定义就可以了,不需要声明类型Dim Names(9) "声明一个具有 10 个元素的数组。 Dim Names() " 声明动态数组。 Dim MyVar, MyNum " 声明两个变量。dim str str="这是一个字符串"
 首页 上一页  1 2 3 4 5 6 7  下一页  尾页