ActiveX控件两问,在线等待解决方案。

u2m 2003-10-17 09:49:38
我打算作一个应用在IE中的ActiveX控件,原实现在应用程序中已经通过,现在想转到IE下,有以下两个问题,盼帮忙
1.原应用程序中用到了dll,ActiveX中用dll和应用程序有区别吗?怎么使用?应用在IE中下载ActiveX控件会下载相应的dll吗?
2.我看很多应用在IE中的,上面的那个地址栏里的地址是什么地址?是自己设定的还是怎么回事?
我新接触这方面东西,希望大家帮忙,不胜感谢!
...全文
48 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
panzhaoping 2003-10-24
  • 打赏
  • 举报
回复
dll是调用的dllmain
gjd111686 2003-10-21
  • 打赏
  • 举报
回复
codebase可以指定你打包的CAB文件[包含你用到的DLL]
shudingbo 2003-10-21
  • 打赏
  • 举报
回复
to>> flyingjust(just)
把*.dll 改为 *.ocx就可以了
XXandOO 2003-10-18
  • 打赏
  • 举报
回复
dll如果是com的(能自注册),也可以用codebase
Hanzo 2003-10-18
  • 打赏
  • 举报
回复
gz
romanticist 2003-10-17
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topicview.asp?id=900047
flyingjust 2003-10-17
  • 打赏
  • 举报
回复
编程没区别 但客户端dll和ocx都需要! 如果用了MFC库没有用use MFC In
Static Lib 编译那么MFC的dll也要在客户端
地址栏的地址是你连接到某个页面时IE自己写的,
warmchang 2003-10-17
  • 打赏
  • 举报
回复
1.ActiveX中用dll和应用程序一样,没有区别;只不过在发布的时候需要在你的cab包里面要包含这些用到的dll。

2.那个地址栏里的地址就是你页面的地址啊(比如:你自己调用该ActiveX控件的页面)。
lsl7909 2003-10-17
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=358
http://www.vckbase.com/document/viewdoc.asp?id=728
u2m 2003-10-17
  • 打赏
  • 举报
回复
请问xiaohyy(醉大饿极) :你说的地址我看了,但是没看到我需要的啊,还是我漏了,能给个详细点的吗?
xiaohyy 2003-10-17
  • 打赏
  • 举报
回复
http://www.codeguru.com/ieprogram/index.shtml
u2m 2003-10-17
  • 打赏
  • 举报
回复
那个用户输入的IP地址是在哪里设定的那?
flyingjust 2003-10-17
  • 打赏
  • 举报
回复
控件自动下载codebase="you.cox" 但dll就不知道了
u2m 2003-10-17
  • 打赏
  • 举报
回复
另一台机器直接输入一个IP地址即可下载我的ActiveX控件和dll,进入IE界面正常显示。这个时怎么实现的,那个IP地址是怎么设定的??
yintongshun 2003-10-17
  • 打赏
  • 举报
回复

如果不需要注册,直接打包就可以,如果需要注册,在程序中注册他
u2m 2003-10-17
  • 打赏
  • 举报
回复
我在自己机器上可以通过IE浏览了,我想问我怎样打包可以使得动态库以及ActiveX控件用户在第一次启动时自动下载到本地那??
使用糖果专业下载组件,可以使你的软件在网络数据获取方面达到专业水准,而无需了解复杂的网络底层和网络协议。 糖果专业下载组件在以下方面有突出优势: 1 极快的下载速度,在同等网络条件下(相同目标文件,相同客户机),糖果下载组件下载速度超出一些专业下载软件 (参考:迅雷的下载速度真的是迅雷不及掩耳吗?); 2 很低的CPU占用率,即使在5个线程,下载速度超过300k/s时, 糖果下载组件进程CPU使用率不到1%; 3 程序随时可以退出,永不"假死". 网络程序最忌讳让用户等待,而我们所见到的一些技术不过关的软件动不动就没反应了,让用户莫名其妙。糖果下载组件即使在域名解释不了或连接不上服务器时依然可以响应用户操作。 4 支持ISA代理服务器的Windows集成身份认证(NTLM认证)。ISA Server是大中型企业网络管理首选防火墙软件,采用 NTLM认证 可以与Windows桌面管理完美结合并增强网络安全。糖果下载组件 可以实现只要IE可以上网,就能下载数据,而无需用户任何额外设置。 5 多源多线程下载技术:多源多线程下载技术从客户端处解决了服务器和网络的资源分配问题,让客户端自主选择网络速度,服务器速度最快的地方获取数据。 这种方案比在服务器端做负载平衡有明显的优越性: 举例说明: 如果你的软件用户分布在 网通,电信,教育网中,只需在三个网中各放置一台服务器,糖果下载组件下载数据时,同时指定3台服务器地址,就会从响应最快的服务器上获取数据。 使用糖果下载组件,可以让你的软件轻松达到或超越专业的网络软件的水准,让你的精力聚焦在业务上,无需在网络底层或操作系统层面上浪费更多时间。 糖果下载控件ActiveX(ocx)方式提供编程接口,易于使用. 包含 一个多线程下载软件的VC演示工程,Delphi演示工程(含源码)和NTLM认证的VC演示工程,Delphi演示工程(含源码).
◆ 01.htm 1、怎么用mscomm控件检测modem是否与计算机联接正确?2、如何用mscomm挂断modem与别的电话机间的连接?(已接通) ◆ 02.htm CWinInetConnection---一个封装了WinInet API函数的类 ◆ 03.htm MODEM通讯意外处理 ◆ 04.htm MsComm 文字传输 ◆ 05.htm PING一个IP地址(向它发送一个数据包并等待回应) ◆ 06.htm SMTP协议简介 (Simple Mail Transfer Protocol) ◆ 07.htm VB5.0 中远程数据库的访问 ◆ 08.htm VB下如何编写CRC校验程序 ◆ 09.htm VB中Winsock控制的UDP协议的使用 ◆ 10.htm Visual Basic 6中发送邮件的新方法 ◆ 11.htm Visual Basic通信程序设计 ◆ 12.htm Whois 示例程序 ◆ 13.htm Winsock Terminal示例程序 ◆ 14.htm WinSock断开导致客户端问题 ◆ 15.htm 把Outlook信箱中的附件另存为 ◆ 16.htm 保证连网计算机时间同步 ◆ 17.htm 编写网络寻呼机 ◆ 18.htm 编制自已的电话录音小程序 ◆ 19.htm 程序中如何启动默认的拨号连接 ◆ 20.htm 程序中如何启动默认的拨号连接? ◆ 21.htm 打开器并进入指定网址 ◆ 22.htm 打开一个直接到自己主页的器 ◆ 23.htm 得到用户的IP地址 ◆ 24.htm 电话拨号 ◆ 25.htm 电子邮件的标准格式 (RFC 822) ◆ 26.htm 断开拨号网络的连接 ◆ 27.htm 断开与 Internet 的连接 ◆ 28.htm 发送电子邮件附件 ◆ 29.htm 发送电子邮件附件1 ◆ 30.htm 发送电子邮件附件2 ◆ 31.htm 发送电子邮件附件3 ◆ 32.htm 发送电子邮件附件4 ◆ 33.htm 获得用户网络登录名 ◆ 34.htm 基 于Win95 的VB5 串 口 通 信 程 序 ◆ 35.htm 基于Win95的VB5串口通信程序 ◆ 36.htm 几个设置IE的API ◆ 37.htm 检测运程数据传送的断线 ◆ 38.htm 简单的聊天程序 ◆ 39.htm 简单电子邮件发送程序 ◆ 40.htm 建立拨号联接 ◆ 41.htm 将所有窗口最小化 ◆ 42.htm 利用IE控件访问Internet ◆ 43.htm 利用IE控件设计简易器 ◆ 44.htm 利用Mscomm32控件判断MODEM是否打开,或者正在工作,并且判断拨号时是否遇忙音 ◆ 45.htm 利用TAPI进行电话拨号 ◆ 46.htm 利用VB访问Internet ◆ 47.htm 利用VB设计聊天室 ◆ 48.htm 利用Visual Basic实现无线通讯 ◆ 49.htm 利用Winsock控件实现局域网通信 ◆ 50.htm 强制一个本地或远程NT系统关闭 ◆ 51.htm 取得网卡序列号 ◆ 52.htm 如何从 Internet 上取回某一个网页的內容? ◆ 53.htm 如何检测是否已连接到Internet? ◆ 54.htm 如何利用Winsock控件编写自己的Internet程序 ◆ 55.htm 如何每天抓取 Internet 上某一个网页中的图片来更换桌面的壁纸? ◆ 56.htm 如何启动拨号网路中的连线? ◆ 57.htm 如何使用MSCOMM32.OCX发送大于80H的字符,可否给个示例程序 ◆ 58.htm 如何通过VB获取网卡地址 ◆ 59.htm 如何用VB打开默认器或默认发信程序? ◆ 60.htm 如何用Visual Basic编写小型的网络系统 ◆ 61.htm 如何在程序中启动 NT 的【拨号连接】对话框 ◆ 62.htm 如何在程序中启动 NT 的【拨号连接】对话框? ◆ 63.htm 如何在网页上使用 VB5 制作的 ActiveX 控件? ◆ 64.htm 如何中断【拨号网络连接】 ◆ 65.htm 设计Browser及FTP程序 ◆ 66.htm 设计Chat程序 ◆ 67.htm 设计E-mail程序 ◆ 68.htm 设置计算机名称 ◆ 69.htm 使用VB获得一页的HTML代码 ◆ 70.htm 使用VB收发电子邮件 ◆ 71.htm 使用标签控件调出器 ◆ 72.htm 使用超链接和发送Email ◆ 73.htm 使用器的文件复制对话框 ◆ 74.htm 输入/输出篇 ◆ 75.htm 通过WnetEnumResource函数获得网络资源 ◆ 76.htm 通往 Internet 的捷径 ◆ 77.htm 显示计算机的名称 ◆ 78.htm 用 MAPI 控件实现发送邮件 ◆ 79.htm 用 WinSock 控件下载文件 ◆ 80.htm 用 Winsock 实现聊天的程序 ◆ 81.htm 用Internet Transfer编写FTP程序 ◆ 82.htm 用Sockets发送电子邮件 ◆ 83.htm 用VB 创 建 自 己 的 通 信 程 序 ◆ 84.htm 用VB5.0开发通信软件的技巧 ◆ 85.htm 用VB5开发IE ◆ 86.htm 用VB编写网络寻呼 ◆ 87.htm 用VB编写小型的网络系统 ◆ 88.htm 用VB创建自己的通信程序 ◆ 89.htm 用VB构建Internet的应用[微软提供] ◆ 90.htm 用VB开发标准CGI程序 ◆ 91.htm 用VB实现客户——服务器(TCP IP)编程实例 ◆ 92.htm 用VB实现客户服务器(TCP、IP)编程实例 ◆ 93.htm 用VB实现聊天讨论室和点对点会话 ◆ 94.htm 用VB写一个定时PING某IP的程序 ◆ 95.htm 用VB制作器 ◆ 96.htm 用Visual Basic 5.0设计E-mail程序(MAPI) ◆ 97.htm 用Visual Basic6.0编写客户服务器程序 ◆ 98.htm 用Visual Basic创建FTP组件 ◆ 99.htm 用Visual Basic开发数据库器 ◆ 100.htm 用Visual Basic轻松地设计Browser及Ftp程序 ◆ 101.htm 用Winsock控件发信Email ◆ 102.htm 用Winsock控件实现文件的下载 ◆ 103.htm 用Winsock实现点对点通信 ◆ 104.htm 邮件检查程序(二) ◆ 105.htm 邮件检查程序(一) ◆ 106.htm 在VB程序中怎样挂断拨号网络 ◆ 107.htm 在VB中操纵OLE服务器应用程序 ◆ 108.htm 在VB中利用UDP协议编写聊天程序 ◆ 109.htm 在VB中模拟实现邮件传输 ◆ 110.htm 在VB中如何得到网络中某一台电脑(电脑名)的网卡地质? (自己的) ◆ 111.htm 在VB中实现文件上传 ◆ 112.htm 在VB中实现文件上载 ◆ 113.htm 在VB中使用UDP协议 ◆ 114.htm 在VB中用Outlook发电子邮件 ◆ 115.htm 在WindowsNT网络中广播消息 ◆ 116.htm 在程序中打开 Internet 拨号连接窗口 ◆ 117.htm 在一个单位内部或通过广域协议(如X.25)互联的行业内部都有几十或上万台计算机互联,用Intranet虽然可以建立聊天室,但实现点对点实时对话却比较困难。本人用Winsock和VB自制了一套聊天室和对话系统,特拿来供同行们参考。 ◆ 118.htm 在应用中集成器 ◆ 119.htm 在桌面上建立一个 Internet 快捷键 ◆ 120.htm 怎样接收电子邮件(POP3协议简介) ◆ 121.htm 怎样用VB得知系统当前是否处于internet链结状态 ◆ 122.htm 制作自己的网络搜索软件 ◆ 123.htm 自动更新工作站的应用程序 ◆ 124.htm 自己的IE——用VB制作器 ◆ 125.htm HTTP协议(学习笔记) ◆ 126.htm HTTP协议四--关于Chunked编码 ◆ 127.htm IE器完全控制 ◆ 128.htm OICQ服务器系统通讯协议 ◆ 129.htm POP3协议的基本命令 ◆ 130.htm RAS API上的其他Function ◆ 131.htm VB + API 获取 IE 的 “代理服务器” 配制 ◆ 132.htm vb调用winInet API接口post数据到指定的url ◆ 133.htm vb开发通信软件 ◆ 134.htm vb设计数据库电子邮件程序(1) ◆ 135.htm vb设计数据库电子邮件程序(2) ◆ 136.htm vb设计数据库电子邮件程序(3) ◆ 137.htm vb设计数据库电子邮件程序(4) ◆ 138.htm vb设计数据库电子邮件程序(5) ◆ 139.htm vb设计数据库电子邮件程序(6) ◆ 140.htm VB实现应用程序在局域网上自动更新 ◆ 141.htm VB邮件检查程序 ◆ 142.htm vb中从域名得到IP及从IP得到域名 ◆ 143.htm VB中检测是否连网 ◆ 144.htm WebClass实现动态WEB编程之理论篇 ◆ 145.htm Winsocket网络编程谈 ◆ 146.htm Winsock编程框架 ◆ 147.htm Winsock错误代码一览表 ◆ 148.htm 程式自动呼叫拨号网络(RAS API) ◆ 149.htm 打开一个超连接 ◆ 150.htm 得到登入windows 的人的id ◆ 151.htm 访问Internet并调用Explorer ◆ 152.htm 非同步文件下载类 ◆ 153.htm 给Outlook的所有用户发送信件 ◆ 154.htm 获得网卡的MAC地址 ◆ 155.htm 基于WinSock的小型网络管理系统及其实现 ◆ 156.htm 检测是否连接到Internet ◆ 157.htm 检测网络是否连通 ◆ 158.htm 建立Web的超链接树形图 ◆ 159.htm 建立你自己的器-Properties ◆ 160.htm 建立你自己的器-查看源文件 ◆ 161.htm 建立你自己的器-打印 ◆ 162.htm 建立你自己的器-打印设置 ◆ 163.htm 建立你自己的器-发送到FontPage ◆ 164.htm 建立你自己的器-发送到Visual Interdev ◆ 165.htm 建立你自己的器-发送到软盘 ◆ 166.htm 建立你自己的器-复制 ◆ 167.htm 建立你自己的器-另存为 ◆ 168.htm 建立你自己的器-全选 ◆ 169.htm 建立你自己的器-页面设置 ◆ 170.htm 开发通信软件的技术与技巧 ◆ 171.htm 开发网络应用的5个技巧 ◆ 172.htm 利用RAS调用在VB6.0中实现拨号上网 ◆ 173.htm 利用VB提取HTML文件中的EMAIL地址 ◆ 174.htm 枚举出局域网上所有网络资源 ◆ 175.htm 面向Internet的开发工具 ◆ 176.htm 你也可以YAI--VB5中Winsock控件的使用 ◆ 177.htm 判断一个文件是否在IE的缓存中 ◆ 178.htm 启动拨号网络中的连接 ◆ 179.htm 浅谈HTTP协议(二)--返回值 ◆ 180.htm 浅谈HTTP协议(一)--结构 ◆ 181.htm 如何利用 WebBrowser 控件显示 .GIF 动画? ◆ 182.htm 如何映射(中断网络磁盘) ◆ 183.htm 设计E-mail的接收部分 ◆ 184.htm 设置器默认网址 ◆ 185.htm 实现端口对端口的聊天 ◆ 186.htm 使用ASP建立Http组件 ◆ 187.htm 使用VB编写纯ASP程序 ◆ 188.htm 使用vb获取网上邻居里的计算机名 ◆ 189.htm 使用VB建立Web Server ◆ 190.htm 使用Visual Basic开发通讯软件 ◆ 191.htm 使用资源工具包执行本地和远程重新启动 ◆ 192.htm 谈谈远程控制中关于搜索、控制计算机的功能 ◆ 193.htm 压缩 Html ◆ 194.htm 用ASP、VB和XML建立互联网应用程序(1) ◆ 195.htm 用ASP、VB和XML建立互联网应用程序(2) ◆ 196.htm 用ASP、VB和XML建立互联网应用程序(3) ◆ 197.htm 用ASP、VB和XML建立互联网应用程序(4) ◆ 198.htm 用COMMUNICATION控件进行数据采集(学习笔记) ◆ 199.htm 用OLE自动化Outlook ◆ 200.htm ActiveX控件用于DHTML开发 ◆ 201.htm 用VB编写ActiveX DLL实现ASP编程 ◆ 202.htm 用VB编写Windows CGI应用程序 ◆ 203.htm 用VB编写标准CGI程序(上) ◆ 204.htm 用VB编写标准CGI程序(下) ◆ 205.htm 用VB编写收发电子邮件程序 ◆ 206.htm 用VB编写网络监控软件 ◆ 207.htm 用VB编写异步多线程下载程序 ◆ 208.htm 用VB导入导出IE器收藏夹 ◆ 209.htm 用VB定制合路器 ◆ 210.htm 用VB和XML建立集中式应用程序 ◆ 211.htm 用VB将Html转换为文本文件 ◆ 212.htm 用VB开发分布式应用 ◆ 213.htm 用VB设计基于代理服务器的网络计费系统 ◆ 214.htm 用VB制作文件下载程序 ◆ 215.htm 用Visual Basic 实现无线通讯 ◆ 216.htm 用Winsock制作一套聊天室和对话系统 ◆ 217.htm 远程共享显示及声音的实现 ◆ 218.htm 远程启动机器ABC API解决方案 ◆ 219.htm 远程启动机器ABC WMI解决方案 ◆ 220.htm 在VB5中利用Winsock和msDNS控件进行 ◆ 221.htm 找出计算机上当前登录入网的用户 ◆ 222.htm 用VB5 Winsock控件创建TCP(IP)客户机 服务器程序
简介 当Microsoft Windows 3.1发布,我希望它与操作系统托管的脚本语言来。其他操作系统没有提供这样的语言,但Windows 3.1只有旧式的MS - DOS批处理文件。由于多种原因,我不想使用第三方解决方案,如PowerBASIC和REXX。在Microsoft Windows 95的开始,我用的Microsoft Visual Basic,Visual Basic应用程序(VBA)的,HTML脚本不时。 1998年,当我在写德国微软出版社Microsoft Windows 98的手册,我发现,Windows 98的一个新功能,叫做Windows脚本宿主(WSH),它提供了两种脚本语言,微软的Visual Basic脚本版(VBScript)和Microsoft JScript中。 那年晚些时候,我开始写的Microsoft Press Microsoft Windows 98的电源工具包。我想,覆盖广泛的WSH在书中介绍了如何使用脚本来自动备份文件,映射网络驱动器和打印机,并显示用户对话框等任务。但是,我无法找到任何有关WSH的文件,并与Windows 98附带的帮助文件并不包括脚本编程。 Windows Script Host的参考,基本上只是一张白纸,我咨询过的书籍和网站处理HTML脚本只使用VBScript和JScript。于是我开始调查与Windows 98附带的WSH样本,访问微软的脚本的网站,写我自己的WSH样本。 我挣扎着找出哪些对象在特定情况下使用,如何获取有关属性和方法的信息,以及如何实现VBScript或JScript脚本。我的第一个脚本的调试是一个痛苦的过程。 1 WSH的报道大多是神秘的运行时错误消息行X或者脚本根本没有做什么,我预期。 (当时,我不知道如何使用Microsoft脚本调试器在脚本环境。)接收运行时的错误消息后,我会到记事本中加载的脚本,一次又一次,行计数手动找到故障线路,并尝试使用试验和错误的方法来修改代码。几个小时后,我决定,这种做法不可能是正确的方式做脚本编程。 一旦我开始访问的WSH新闻组,我发现其他人有同样的问题。伊恩Morrish,克拉伦斯华盛顿和迈克尔哈里斯,如新闻组参与者分享了大量有用的知识,但我还需要更多细节,特别是关于高级编程。我写的关于VBA编程和HTML脚本的书籍,所以我熟悉HTML脚本和ActiveX编程处理的互联网网站。从这些网站中,我学到一些编辑器,支持脚本编程,我学会了如何使用Visual Basic脚本调试器和对象浏览器等工具找出更多有关对象及其方法和属性。我是能够增加我的生产力显著,并创造一个相对舒适的环境脚本。 首先,我使用了典型的“宏程序员”的做法,我试图结合简单的语句创建一个脚本程序。有时这种方法的工作,但我常常是语法和运行时的错误消息轰炸。我也错过了,我也可以用来复制文件,启动程序,获取用户输入,等强大的报表。在WSH的新闻组中,一些人建议的第三方工具和语言,答应了丰富的报表收集。我知道,从以往的经验,但是,如果一种语言提供了丰富的报表集合,语言是难以学习和使用。 我用我的VBA编程经验的基础上,开始探索脚本背后的哲学。我了解到,您不必声明“埋”在一个任务,如阅读脚本的参数,并复制文件的脚本语言,因为WSH,您可以访问系统上安装的所有COM对象。因此,一个脚本可以使用这些COM对象提供的功能,以处理其任务。您还可以添加一个系统,它在不改变基本的脚本语言的脚本功能,增加新的COM对象。如果一个对象提供拼写检查,例如,你可以简单地在脚本中使用该对象。一旦我变得更加熟悉与WSH的,我发现它是最热门的技术在近年来从Microsoft。 WSH是胶,组合成一个新的,定制的应用程序中的对象(例如,一个Microsoft Office拼写检查,字处理器,一个浏览器,和邮件系统)。你可以实现一个复杂的应用程序的快速,方便,只需使用几行脚本代码。 这一点,我已经收集了大量的素材,积累了一些经验,写了许多样品。我也写了简短的章节对WSH在Microsoft Windows 98电源工具包。在1998年法兰克福书展,我会见了微软出版社收购编辑托马斯Pohlmann和斯蒂芬Guty,和WSH脚本编程标题的想法诞生。六个星期后,我的德国手稿准备好了。这本书的第一版出版于1999年1月。这是全球出版的第一个WSH的1本书。在春季,WSH 2中的第一个beta版本发布。我们决定等待直到Windows 2000发布之前提前与WSH 2本书。我花更多的时间调查WSH 2中和其他热点技术,如ActiveX数据对象(ADO),Active Directory服务接口(ADSI),和Windows管理规范(WMI)。我还写了WSH的初学者在电脑杂志的系列文章中,我的网站上创建的WSH街,花了很多时间,访问了WSH的新闻组,以了解更多的脚本程序员遇到的麻烦。 我收集的材料已经足够了两本书,这其中,对于初学者和中级用户,和一个先进的用户量,处理脚本技术。微软出版社将出版的第二本书,与微软Wi​​ndows Script Host的2.0先进的开发,今年晚些时候。这本书是为先进的脚本程序员,谁想要在此介绍卷涵盖的主题,深入覆盖。与Microsoft Windows脚本宿主2.0高级开发将解释如何使用额外的对象,以延长您的脚本功能。特别主题,如。WSF文件和许多无证暗示,涉及到这些文件的XML结构,将被覆盖。还包括将解释如何使用额外的工具,如OLE / COM对象查看器或对象浏览器中找出更多有关对象及其方法和属性。随着其他有用的技术,您将学习如何访问Microsoft Office应用程序从WSH脚本和如何使用,如Microsoft Excel电子表格,拼写检查办公室,Microsoft Word文档和Microsoft Outlook功能的对象。您还将学习如何阅读和使用Microsoft Access或ActiveX数据对象(ADO)从脚本编写到数据库。书中还介绍了管理员如何从WSH脚本访问Active Directory服务接口(ADSI),以维护用户帐户,服务或股份。您将了解新技术基于Web的企业管理(WBEM),和称为“Windows管理接口(WMI)微软执行,你会发现如何使用脚本来访问网络和计算机信息,并取消正在运行的进程。您还可以发现,如何写的ActiveX控件,使用Visual Basic的控制项建立版(CCE)访问Windows API函数,创建ActiveX的形式,访问剪贴板,控制CD盘,更。我将深入研究在这本书中使用的几个ActiveX控制更详细的源代码。鉴于Microsoft Windows脚本宿主2.0开发人员指南教你,你需要知道什么开始,与Microsoft Windows脚本宿主2.0高级开发与WSH的脚本会为您提供的信息,你需要成为一个专家WSH程序员。您将学到的专业开发人员使用,以帮助得到最有效的WSH的编程技巧。
第Ⅰ部分 使 用 Eclipse 第1章 引言 3 1.1 Eclipse作为应用程序开发 工具的宿主...... 4 1.2 不仅仅是工具的宿主,Eclipse 还作为客户端应用程序的 宿主...... 5 1.3 什么是Eclipse?...... 6 1.3.1 工具与应用程序的集成平台..... 6 1.3.2 Java开发环境..... 7 1.3.3 开源社区..... 8 1.3.4 Eclipse基金会的目标..... 9 1.3.5 作为用户和捐献者(contributor)参与社区..... 10 1.3.6 Eclipse许可证..... 10 1.4 获取与安装Eclipse.. 11 1.5 本章小结...... 11 1.6 参考文献...... 12 第2章 Eclipse入门 13 2.1 第一步...... 14 2.1.1 提示没有任何JRE可用的对话框..... 14 2.1.2 创建您的第一个项目..... 15 2.1.3 Eclipse的外观:编辑器、视图和透视图..... 16 2.1.4 用户界面概述..... 18 2.1.5 首选项介绍..... 19 2.2 基本的Eclipse使用...... 20 2.2.1 在Eclipse中工作..... 21 2.2.2 了解Eclipse用户界面..... 22 2.2.3 任务、书签和问题..... 28 2.2.4 后台处理..... 29 2.2.5 Eclipse的帮助功能..... 30 2.3 资源管理...... 36 2.3.1 工作空间..... 36 2.3.2 有关项目的更多内容..... 42 2.3.3 资源的导入和导出..... 44 2.3.4 资源移动..... 46 2.3.5 文本编辑器..... 47 2.3.6 快速差别—— 实时变化通知..... 48 2.3.7 文件编码..... 48 2.3.8 打印..... 49 2.4 Eclipse定制...... 49 2.4.1 透视图..... 49 2.4.2 渐进显示..... 51 2.4.3 在Eclipse中运行多窗口和多工作空间..... 51 2.4.4 改变键盘快捷键..... 54 2.4.5 定制JRE... 55 2.4.6 在Eclipse中使用其他计算机程序..... 55 2.4.7 性能..... 60 2.5 练习概述...... 61 2.6 本章小结...... 61 2.7 参考文献...... 62 第3章 使用Java开发工具 63 3.1 JDT入门...... 64 3.1.1 JDT用户界面概述..... 64 3.1.2 JDT基础..... 65 3.1.3 使用JDT视图..... 68 3.1.4 搜索..... 69 3.2 编写Java代码...... 71 3.2.1 Java编辑器概述..... 71 3.2.2 键入辅助..... 76 3.2.3 代码辅助..... 77 3.2.4 代码生成..... 80 3.2.5 导航Java错误和警告..... 81 3.2.6 使用快速修正功能来修改Java错误..... 82 3.2.7 重构..... 83 3.2.8 使用代码模板..... 86 3.2.9 字符串外部化..... 87 3.2.10 生成Javadoc.. 88 3.2.11 在不同的JRE下编写 Java代码..... 90 3.2.12 编译代码..... 91 3.2.13 Eclipse与Ant的集成..... 92 3.3 Java元素的使用...... 94 3.3.1 文件夹..... 94 3.3.2 Java项目..... 94 3.3.3 类和接口..... 98 3.3.4 导入Java元素..... 98 3.3.5 Java元素的本地历史记录..... 98 3.4 调整JDT性能...... 99 3.5 JDT视图和首选项的 更多内容...... 100 3.5.1 视图内容过滤..... 100 3.5.2 Package Explorer视图..... 100 3.5.3 Hierarchy视图..... 101 3.5.4 Call Hierarchy视图..... 102 3.5.5 Outline视图..... 103 3.5.6 Problems视图..... 103 3.5.7 Search视图..... 103 3.5.8 Java Type Hierarchy透视图..... 103 3.5.9 Java Browsing透视图..... 104 3.6 练习概述...... 105 3.7 本章小结...... 106 3.8 参考文献...... 106 第4章 Java程序的运行与调试 107 4.1 运行Java代码...... 108 4.1.1 使用运行和调试命令..... 108 4.1.2 管理启动配置..... 109 4.1.3 对代码片断编辑测试窗页面中的表达式进行求值..... 111 4.2 调试...... 112 4.2.1 基本的调试活动..... 113 4.2.2 表达式求值..... 115 4.2.3 修改变量和字段的值..... 116 4.2.4 使用Java编辑器进行调试..... 116 4.2.5 对当前所调试的程序进行操作..... 117 4.2.6 Console视图中的程序输出..... 119 4.2.7 有关断点的更多知识..... 119 4.2.8 Java异常断点..... 121 4.2.9 将程序与源代码相关联..... 123 4.2.10 热代码替换..... 123 4.3 远程调试...... 124 4.4 练习概述...... 125 4.5 本章小结...... 126 4.6 参考文献...... 127 第5章 协同使用Eclipse 129 5.1 Eclipse对CVS的支持...... 130 5.2 Eclipse的通用小组支持...... 131 5.2.1 Eclipse小组支持的基本原则..... 132 5.2.2 配置小组支持..... 132 5.3 为初学者准备的CVS概述...... 133 5.3.1 CVS的一些重要设计原则..... 133 5.3.2 修订版:任何东西都不会被丢失..... 134 5.3.3 更新:跟上小组的进度..... 134 5.3.4 提交:共享您的资源..... 134 5.3.5 版本设置:捕获资源的当前状态..... 135 5.3.6 分支和合并:支持并行开发..... 135 5.3.7 在分支和合并时对于修订版本号发生了什么..... 136 5.3.8 使用CVS管理二进制文件..... 136 5.4 Eclipse中的CVS用户界面...... 136 5.4.1 CVS Repository Exploring透视图:资源库主页..... 137 5.4.2 CVS Repositories视图..... 137 5.4.3 CVS Annotate视图..... 141 5.4.4 CVS Resource History视图..... 141 5.4.5 查看CVS命令..... 143 5.4.6 CVS是如何管理工作空间中项目的..... 143 5.4.7 在Team快捷菜单中可获得的CVS操作..... 144 5.4.8 Team Synchronizing透视图和Synchronize向导..... 146 5.4.9 处理同一文件的并发更新..... 147 5.4.10 使用CVS的Watch/Edit 支持以避免对同一文件的 并行更新..... 148 5.4.11 恢复被删除的文件..... 150 5.4.12 其他CVS用户界面元素.... 150 5.5 特殊情况及其处理...... 151 5.5.1 对项目资源进行重命名、移动和删除..... 151 5.5.2 取消修改:使用替换和比较操作..... 152 5.5.3 通过建立分支来进行版本维护和新版本开发..... 152 5.6 其他功能...... 152 5.6.1 编辑器中的快速差别功能对CVS的支持..... 153 5.6.2 补丁程序:快速而又简单地共享更改..... 153 5.6.3 项目集:加快新工作空间..... 153 5.6.4 断开项目与CVS的连接或为项目重分派一个CVS资源库..... 154 5.7 练习概述...... 154 5.8 本章小结...... 155 5.9 参考文献...... 155 第6章 Eclipse环境管理 157 6.1 Eclipse安装实例概览...... 158 6.1.1 Eclipse的目录内容..... 158 6.1.2 Eclipse的平台配置..... 159 6.1.3 features目录..... 160 6.1.4 plugins目录..... 161 6.2 理解运行时配置...... 161 6.2.1 用户界面中的功能部件详细信息..... 162 6.2.2 配置详细信息..... 163 6.3 协调首选项设置...... 164 6.3.1 同步首选项设置..... 164 6.3.2 定义新的首选项默认设置..... 165 6.4 理解配置管理的基本原理...... 167 6.4.1 Update Manager介绍..... 168 6.4.2 配置基础..... 168 6.4.3 安装位置类型..... 169 6.4.4 Update Manager的API命令..... 170 6.5 使用Update Manager.. 170 6.5.1 安装位置的添加和删除..... 171 6.5.2 功能部件的禁用和启用..... 171 6.5.3 从更新站点安装功能部件..... 172 6.5.4 将服务应用于功能部件..... 173 6.5.5 相关练习..... 173 6.6 配置的管理...... 174 6.6.1 理解默认配置处理..... 174 6.6.2 使用备用配置..... 175 6.6.3 在工作空间和配置之间强制建立一对一关系..... 177 6.7 本章小结...... 178 6.8 参考文献...... 178 第Ⅱ部分 扩展Eclipse基础 第7章 扩展Eclipse,亦利亦弊 181 7.1 对扩展Eclipse感到兴奋吗? 您肯定会的!...... 181 7.2 一个简单而实用的示例...... 182 7.3 短暂接触“Hello, World”...... 183 7.4 提出恰当的问题比知道答案 更重要...... 185 7.4.1 怎样把扩展显示在用户界面中,显示在哪里..... 186 7.4.2 扩展用户界面的常用方法.... 186 7.4.3 用户界面的扩展怎样感知某些事件(如用户的选择)?..... 189 7.4.4 怎样扩展对象(如显示在Outline视图中的对象). 193 7.4.5 不同视图中显示的相同对象之间的关系..... 194 7.4.6 怎样通过程序更改JDT模型..... 195 7.5 接下来我们学习哪些内容...... 197 第8章 Eclipse体系结构概述 199 8.1 历史和现状...... 200 8.2 体系结构的最高优先级: 可扩展性与集成...... 201 8.3 Eclipse作为IDE平台和作为 胖客户端应用程序...... 203 8.4 Eclipse Platform Runtime.. 204 8.5 用户界面架构...... 205 8.5.1 标准小部件工具箱..... 205 8.5.2 JFace用户界面架构..... 206 8.6 Workbench架构...... 208 8.6.1 存储持久性值..... 209 8.6.2 使用胖客户端平台创建应用程序..... 209 8.6.3 使用并发性架构维持对用户的快速响应..... 210 8.6.4 通过功能组管理用户界面..... 210 8.6.5 扩展Workbench集成开发环境..... 211 8.7 本章小结...... 212 8.8 参考文献...... 212 第9章 插件开发入门 213 9.1 插件入门...... 214 9.1.1 集成情景..... 215 9.1.2 发布自己的插件..... 217 9.2 扩展和扩展点入门...... 217 9.3 实现插件的基本步骤...... 220 9.3.1 声明自己的插件清单..... 222 9.3.2 定义自己的插件类..... 225 9.3.3 安装自己的插件..... 226 9.4 使用插件开发环境...... 227 9.4.1 PDE视图和编辑器..... 227 9.4.2 管理运行时环境和开发环境..... 230 9.4.3 创建并运行插件..... 231 9.5 练习概述...... 232 9.6 本章小结...... 233 9.7 参考文献...... 233 第10章 使用胖客户端平台创建 应用程序..... 235 10.1 在RCP上构建应用程序的 理由...... 235 10.1.1 给企业带来的好处..... 235 10.1.2 给软件开发者带来的 好处..... 236 10.1.3 给用户带来的好处..... 236 10.2 复习Eclipse体系结构...... 237 10.2.1 Eclipse应用程序类型..... 240 10.2.2 Eclipse的运行..... 241 10.2.3 定义一个Eclipse应用 程序..... 242 10.3 重用Eclipse的时机...... 243 10.3.1 非UI的插件组件..... 243 10.3.2 SWT图形用户界面..... 244 10.3.3 基于添加项的Workbench 用户界面..... 245 10.3.4 IDE扩展..... 245 10.4 实现自己的Workbench... 246 10.4.1 可以在Workbench中 配置什么..... 249 10.4.2 启动并运行自己的应用 程序..... 250 10.4.3 配置自己的应用程序..... 250 10.4.4 支持来自其他插件的UI 添加项..... 251 10.5 练习概述...... 252 10.6 本章小结...... 253 10.7 参考文献...... 253 第11章 创建扩展点:其他人怎样 扩展您的插件..... 255 11.1 扩展点和扩展之间的关系...... 255 11.2 查看激活的插件、扩展以及扩展点的正式列表...... 257 11.3 怎样定义扩展点...... 258 11.3.1 选择需要让其他人扩展 或配置的现有代码..... 258 11.3.2 声明扩展点..... 260 11.3.3 为预期的行为定义 接口..... 261 11.3.4 处理用于扩展点的 注册表项..... 264 11.3.5 通过以前定义的接口 契约调用适当的方法..... 265 11.4 处理动态插件...... 266 11.5 怎样启用基于模式的New Extension向导...... 267 11.5.1 为什么要定义一个 模式..... 268 11.5.2 模式编辑器..... 268 11.6 示例概述...... 269 11.7 本章小结...... 269 11.8 参考文献...... 269 第12章 插件开发的高级专题 271 12.1 从Eclipse 2.1移植插件...... 271 12.2 插件类加载器...... 272 12.3 运行时发现以及延迟加载...... 273 12.4 强制进行前期插件激活...... 274 12.5 插件粒度...... 275 12.6 插件片断...... 275 12.6.1 片断用作语言包..... 276 12.6.2 片断作为专用于某个 平台的内容..... 276 12.7 本章小结...... 277 12.8 参考文献...... 277 第13章 定义功能部件和产品 279 13.1 功能部件...... 279 13.1.1 功能部件的概念..... 279 13.1.2 功能部件的定义..... 281 13.1.3 烙印功能部件的商标..... 285 13.1.4 安装功能部件..... 287 13.2 产品...... 292 13.2.1 创建产品定义..... 292 13.2.2 定义产品介绍的内容..... 293 13.2.3 在Eclipse Platform上 构建自己的产品..... 294 13.3 练习概述...... 295 13.4 本章小结...... 295 13.5 参考文献...... 296 第Ⅲ部分 扩展Eclipse Workbench 第14章 SWT:一个轻便但出色的 小部件体系 299 14.1 SWT应用程序的基本结构...... 300 14.2 常见的SWT小部件...... 302 14.3 对事件作出响应...... 304 14.4 怎样使用布局管理器来 布置SWT小部件...... 307 14.4.1 填充布局..... 310 14.4.2 行布局..... 310 14.4.3 栅格布局..... 312 14.4.4 窗体布局..... 315 14.4.5 栈布局..... 317 14.4.6 布局管理器总结..... 317 14.5 错误处理...... 317 14.6 小部件有特殊的销毁需求...... 318 14.7 使用线程来分离UI和非UI行为...... 320 14.8 SWT包概述...... 322 14.9 SWT对Swing的支持...... 323 14.10 Eclipse Forms.. 323 14.11 示例概述...... 324 14.12 本章小结...... 324 14.13 参考文献...... 325 第15章 JFace查看器 327 15.1 查看器基础...... 327 15.1.1 查看器的概念..... 327 15.1.2 查看器的外观..... 328 15.1.3 查看器的类型..... 328 15.1.4 查看器的用法..... 329 15.1.5 使用查看器的原因..... 329 15.2 查看器架构...... 330 15.2.1 类结构..... 330 15.2.2 内容提供者、内容查看 器与标签提供者之间 的关系..... 331 15.3 创建基本的内容查看器的配置...... 332 15.3.1 确定输入..... 332 15.3.2 创建查看器..... 333 15.3.3 创建内容提供者..... 334 15.3.4 创建标签提供者..... 334 15.3.5 把查看器与内容提供者、 标签提供者连接起来..... 336 15.3.6 定义到查看器的输入 内容..... 336 15.3.7 实现模型-查看器同步..... 337 15.4 控制在结构化查看器中显示的内容...... 341 15.4.1 过滤查看器的内容..... 342 15.4.2 对查看器内容进行 排序..... 343 15.5 与查看器对象相互作用...... 345 15.5.1 处理查看器中用户选中 的对象..... 346 15.5.2 自由地创建查看器弹出 菜单操作..... 347 15.5.3 添加查看器操作..... 348 15.6 使用其他类型的查看器...... 349 15.6.1 表查看器..... 350 15.6.2 树查看器..... 351 15.6.3 表树查看器..... 352 15.6.4 复选框查看器..... 352 15.7 Workbench集成的高级 选项...... 352 15.7.1 增加对Properties对话框 的支持..... 353 15.7.2 在查看器中为对象添加 标签修饰..... 354 15.8 示例概述...... 356 15.9 本章小结...... 356 15.10 参考文献...... 357 第16章 对话框和向导 359 16.1 对话框——非Workbench 部分的用户界面...... 359 16.1.1 引用点——用户界面 架构..... 360 16.1.2 用于对话框和向导的 Workbench扩展点..... 360 16.1.3 常见的可重用对话框..... 363 16.2 向Preferences对话框中添加 首选项页面...... 364 16.2.1 定义首选项页面扩展..... 365 16.2.2 实现首选项页面..... 366 16.2.3 定义首选项页面的用户 界面..... 367 16.2.4 如何向首选项页面添加 首选项值逻辑..... 368 16.2.5 构建字段编辑器首 选项页面..... 379 16.3 向Properties对话框中添加属性页面...... 373 16.3.1 定义属性页面扩展..... 374 16.3.2 实现属性页面..... 376 16.3.3 定义属性页面的用户 界面..... 377 16.3.4 添加资源属性的访问 逻辑..... 378 16.3.5 保存那些特定于资源 类型的属性..... 370 16.3.6 实现自己的属性 对话框..... 380 16.4 添加向导...... 380 16.4.1 定义向导扩展..... 381 16.4.2 实现向导..... 383 16.4.3 实现向导页面..... 384 16.4.4 定制向导..... 385 16.4.5 控制向导页面的进展..... 387 16.4.6 延迟创建向导页面的 用户界面..... 388 16.4.7 可重用的专用向导 页面..... 389 16.5 直接打开向导对话框来处理向导...... 391 16.6 示例概述...... 392 16.7 本章小结...... 393 16.8 参考文献...... 393 第17章 对话框设置、首选项及 用户设置..... 395 17.1 对话框设置、首选项值以及 用户设置选项概述...... 395 17.1.1 对话框设置..... 395 17.1.2 首选项值..... 396 17.1.3 用户设置..... 396 17.2 对话框设置中的存储值...... 396 17.2.1 管理对话框设置..... 397 17.2.2 对话框设置的用法..... 398 17.3 存储插件的首选项值...... 398 17.3.1 管理首选项值..... 399 17.3.2 设置默认的首选项值..... 400 17.3.3 对首选项值的更改作出 反应..... 400 17.4 使用用户设置管理作用域内的属性值...... 401 17.4.1 作用域、节点和 存储值..... 401 17.4.2 作用域的层次结构..... 402 17.4.3 访问用户设置..... 403 17.4.4 更改通知..... 405 17.5 示例概述...... 405 17.6 本章小结...... 406 17.7 参考文献...... 406 第18章 视图 407 18.1 视图:通用Workbench部分...... 407 18.1.1 行为..... 408 18.1.2 体系结构..... 409 18.1.3 功能..... 409 18.2 视图的实现...... 410 18.2.1 设计视图..... 410 18.2.2 声明视图扩展..... 411 18.2.3 创建视图类..... 412 18.2.4 定义用户界面..... 413 18.2.5 添加视图操作..... 414 18.2.6 保存和恢复视图的 状态..... 416 18.2.7 打开一个视图的 第二个实例..... 416 18.2.8 支持Show In请求..... 417 18.2.9 回顾视图的实现..... 418 18.3 支持操作添加项...... 419 18.3.1 创建添加项的目标菜单 占位符..... 419 18.3.2 把快捷菜单注册到 Workbench中..... 420 18.4 与其他Workbench组件交互...... 421 18.4.1 共享并侦听Workbench 部分被选中的内容..... 422 18.4.2 提供显示在Properties 视图中的内容..... 424 18.4.3 支持全局操作..... 429 18.5 示例概述...... 430 18.6 本章小结...... 430 18.7 参考文献...... 431 第19章 编辑器 433 19.1 编辑器的行为和体系结构...... 433 19.2 基本的实现步骤...... 434 19.2.1 设计编辑器的外观..... 435 19.2.2 为编辑器的输入创建 一个New向导(可选). 435 19.2.3 声明编辑器扩展..... 436 19.2.4 创建编辑器类..... 437 19.2.5 使用编辑器输入实例化 模型..... 437 19.2.6 定义用户界面..... 439 19.2.7 处理用户对编辑器 输入的修改..... 439 19.2.8 处理对编辑器输入 的保存..... 439 19.2.9 把查看器与模型关联 起来..... 440 19.2.10 使模型和编辑器同步..... 440 19.2.11 处理用户所选的内容..... 441 19.2.12 定义编辑器的操作..... 441 19.3 除了基本实现步骤之外的其他内容...... 444 19.3.1 重用胖客户端平台和 IDEWorkbench的专用 编辑器..... 445 19.3.2 连接编辑器和Outline 视图..... 446 19.3.3 在编辑器和视图之间 导航..... 447 19.4 示例概述...... 448 19.5 本章小结...... 449 19.6 参考文献...... 449 第20章 透视图 451 20.1 创建透视图...... 451 20.2 使用perspectiveExtensions扩展点...... 453 20.3 示例概述...... 454 20.4 本章小结...... 455 20.5 参考文献...... 455 第21章 操作添加项:集成捷径 457 21.1 操作添加项扩展点...... 458 21.2 操作添加项基础...... 459 21.2.1 操作添加项API. 459 21.2.2 在插件清单文件中指定 添加项..... 461 21.2.3 在菜单和工具栏中指定 操作..... 463 21.2.4 使用过滤器来精确定义 您的操作出现的位置..... 465 21.2.5 被选中内容的类 过滤器..... 466 21.2.6 使用操作表达式创建 精细的过滤器..... 466 21.3 向Workbench菜单栏和 工具栏添加操作...... 469 21.4 向视图的菜单和工具栏 添加操作...... 474 21.5 向编辑器的菜单和工具栏 添加操作...... 478 21.6 向视图和编辑器添加快捷 菜单...... 481 21.6.1 向视图添加快捷菜单..... 481 21.6.2 向编辑器添加快捷 菜单..... 482 21.6.3 向视图或编辑器中被选中 的对象添加快捷菜单..... 483 21.7 向操作指派加速键...... 486 21.8 示例概述...... 489 21.9 本章小结...... 489 21.10 参考文献...... 490 第22章 提供帮助 491 22.1 集成您的联机文档...... 492 22.1 1 把帮助内容创建为 HTML内容..... 493 22.1.2 声明帮助扩展..... 493 22.1.3 创建目录文件..... 494 22.1.4 Eclipse的联机文档..... 496 22.2 创建上下文相关的帮助...... 497 22.2.1 声明帮助的上下文 扩展..... 497 22.2.2 定义弹出信息的内容..... 497 22.2.3 把弹出信息与UI上下文 关联起来..... 498 22.3 运行独立的帮助 Infocenter.. 500 22.4 定制Help系统...... 500 22.5 示例概述...... 501 22.6 本章小结...... 501 22.7 参考文献...... 501 第Ⅳ部分 扩展Eclipse IDE 第23章 工作空间资源编程 505 23.1 资源的概念...... 505 23.1.1 物理视图..... 506 23.1.2 逻辑视图..... 507 23.1.3 资源模型与文件系统 的交互..... 508 23.1.4 Navigator视图中资源 的可见性..... 509 23.2 工作空间API.. 510 23.2.1 工作空间和工作空间 根目录..... 510 23.2.2 资源容器..... 512 23.2.3 工作空间资源句柄..... 513 23.2.4 项目..... 514 23.2.5 项目描述..... 515 23.2.6 资源..... 517 23.2.7 路径..... 518 23.2.8 文件夹和文件..... 520 23.2.9 链接资源..... 521 23.2.10 访问资源树中的资源..... 522 23.3 资源属性...... 524 23.3.1 会话属性..... 524 23.3.2 持久属性..... 525 23.4 处理工作空间资源更改 事件...... 526 23.4.1 使用工作空间API 跟踪更改..... 526 23.4.2 添加资源更改侦听器..... 526 23.4.3 资源更改事件触发 的时序..... 529 23.4.4 访问资源变化..... 530 23.4.5 资源变化内容..... 533 23.5 资源更改事件管理...... 534 23.5.1 使用Iworkspace Runnable.. 534 23.5.2 使用WorkspaceJob类..... 535 23.5.3 使用工作空间调度 规则工厂..... 536 23.6 使用工作空间保存事件来保存关键数据...... 537 23.6.1 保存事件——何种与 何时..... 537 23.6.2 保存参与者API. 537 23.7 示例概述...... 539 23.8 本章小结...... 540 23.9 参考文献...... 540 第24章 利用性质和构建器管理 资源 541 24.1 定制项目的处理行为...... 541 24.1.1 如何使用性质和 构建器..... 541 24.1.2 扩展工作空间资源 处理架构..... 542 24.2 定义和实现性质...... 542 24.2.1 创建性质以支持项目 配置..... 542 24.2.2 将性质添加到项目中..... 544 24.2.3 管理性质-构建器关系..... 545 24.2.4 使用定制图像标识您 的项目性质..... 546 24.3 定义和实现增量项目 构建器...... 547 24.3.1 构建器基础..... 547 24.3.2 构建器调用..... 548 24.3.3 判断何时需要使用 构建器..... 549 24.3.4 构建器的定义和实现..... 550 24.4 示例概述...... 553 24.5 本章小结...... 554 24.6 参考文献...... 554 第25章 使用标记对资源进行标识 555 25.1 使用标记...... 555 25.1.1 创建定制的资源标记..... 557 25.1.2 设置标记属性..... 558 25.1.3 在标记创建和更新的 过程中限制资源更改 事件..... 558 25.2 添加新的标记类型...... 559 25.2.1 定义标记超类型..... 559 25.2.2 重用超类型属性..... 561 25.2.3 控制标记持久性..... 561 25.2.4 向文本标记添加定制 图像..... 561 25.3 用标记解析生成器和帮助支持生成器扩展标记...... 562 25.3.1 添加标记解析..... 563 25.3.2 添加标记帮助..... 564 25.4 示例概述...... 565 25.5 本章小结...... 566 25.6 参考文献...... 566 第26章 使用JFace Text构建定制 的文本编辑器 567 26.1 标准的文本编辑器功能...... 568 26.1.1 文本编辑和查看..... 568 26.1.2 标准菜单和工具栏项..... 568 26.1.3 标准的标记表示..... 569 26.2 编辑器配置:定制点...... 570 26.2.1 内容辅助..... 570 26.2.2 语法突出显示..... 571 26.2.3 内容格式化..... 571 26.2.4 各种各样的定制..... 572 26.3 文本编辑器的实现细节...... 572 26.3.1 选择编辑器的起点..... 573 26.3.2 TextViewer类..... 573 26.3.3 AbstractDecoratedText Editor类的关系..... 574 26.3.4 文档的来源..... 575 26.3.5 模型-视图-控制器 关系..... 576 26.3.6 对文档进行分区..... 577 26.3.7 SourceViewer Configuration类..... 578 26.4 示例概述...... 578 26.5 本章小结...... 579 26.6 参考文献...... 579 第27章 扩展Java开发工具 581 27.1 JDT概述及其作用...... 581 27.2 Java模型...... 582 27.3 访问可重用的JDT功能...... 584 27.3.1 JavaCore类..... 584 27.3.2 JavaUI类..... 588 27.3.3 ToolFactory类..... 589 27.3.4 SearchEngine类..... 590 27.4 编译Java源代码...... 590 27.5 分析Java源代码...... 590 27.5.1 JDT Abstract Syntax Tree.. 591 27.5.2 细粒度解析Java 源代码..... 594 27.6 操作Java源代码...... 598 27.6.1 使用IsourceManipulation 进行简单源代码操作..... 598 27.6.2 使用IBuffer进行稍复杂 的源代码操作..... 598 27.6.3 使用AST重写进行复杂 的源代码操作..... 601 27.7 JDT在何处扩展了Eclipse.. 604 27.8 扩展JDT用户界面...... 605 27.8.1 添加视图操作..... 605 27.8.2 添加编辑器操作..... 607 27.8.3 向Java元素快捷菜单 添加操作..... 608 27.8.4 向特定视图或者编辑器 快捷菜单添加操作..... 608 27.8.5 添加全局操作..... 609 27.8.6 在自己的视图中显示 JDT元素..... 609 27.8.7 重用公共的JDT选择 对话框..... 609 27.9 示例概述...... 610 27.10 本章小结...... 610 27.11 参考文献...... 610 第Ⅴ部分 可扩展性专题 第28章 可服务性 613 28.1 插件诊断信息:系统和 配置信息...... 614 28.2 Eclipse Status对象:状态收 集器...... 614 28.3 异常处理:错误检测...... 616 28.4 错误对话框:在错误消息中 提供详细的状态信息...... 616 28.5 运行时跟踪:一个运行时 诊断工具...... 618 28.6 在产品环境中使用跟踪...... 620 28.7 诊断信息:一个内容丰富的 错误日志...... 620 28.8 错误记录:把错误写入 Workbench错误日志中...... 621 28.9 示例概述...... 622 28.10 本章小结...... 622 28.11 参考文献...... 622 第29章 使用作业实现响应性和 并发性..... 623 29.1 并发性架构...... 623 29.1.1 在架构中谁完成了什么 工作?..... 624 29.1.2 作业的基础..... 625 29.1.3 作业的类型..... 628 29.1.4 作业管理器..... 629 29.1.5 作业在用户界面中的 可见性..... 630 29.1.6 冲突管理..... 631 29.1.7 回顾并发性架构..... 632 29.2 使用作业...... 632 29.2.1 创建作业..... 633 29.2.2 定义作业的属性..... 634 29.2.3 调度作业..... 634 29.2.4 使用sleep请求来暂停 一个作业..... 635 29.2.5 等待作业的完成..... 635 29.2.6 侦听作业更改事件..... 636 29.2.7 请求撤销作业..... 637 29.3 用户交互选项...... 638 29.3.1 使用特定于作业的 图像..... 638 29.3.2 使用活动进度报告的 方式运行作业..... 639 29.3.3 Workbench部分用于作业 处理的支持技术..... 639 29.3.4 提供作业的完成反馈..... 640 29.4 作业的冲突管理选项...... 642 29.4.1 使用作业管理器锁..... 642 29.4.2 使用调度规则..... 643 29.4.3 工作空间资源对调度 规则的支持..... 644 29.4.4 定义调度规则..... 645 29.5 示例概述...... 646 29.6 本章小结...... 646 29.7 参考文献...... 646 第30章 使用功能组管理丰富 的功能 647 30.1 功能组简介...... 648 30.2 功能组扩展点...... 651 30.3 定义主向导...... 656 30.4 活动API.. 657 30.5 定义自己的触发器...... 659 30.6 示例概述...... 659 30.7 本章小结...... 659 30.8 参考文献...... 660 第31章 国际化和辅助功能 661 31.1 国际化对插件有何影响...... 661 31.2 国际化的步骤...... 663 31.2.1 把可翻译的字符串移动 到*.properties文件中..... 663 31.2.2 隔离那些依赖于外观的 参数..... 664 31.2.3 使用语言环境敏感的正确 数据格式和置换API. 664 31.2.4 使用自己本国的语言 进行测试..... 664 31.2.5 创建初始翻译的插件 片断..... 665 31.2.6 Eclipse语言包JAR... 665 31.3 辅助功能...... 667 31.4 示例概述...... 668 31.5 本章小结...... 668 31.6 参考文献...... 669 第32章 性能调整 671 32.1 应该快速启动Eclipse的 原因...... 671 32.2 使用Runtime Spy诊断 启动问题...... 672 32.2.1 安装Core Tools.. 672 32.2.2 侦查Workbench的 开发..... 673 32.2.3 侦查运行时Workbench.. 679 32.2.4 接下来的内容..... 679 32.3 示例研究:提升IBM Web Sphere Studio的启动性能...... 680 32.3.1 帮助Eclipse快速启动..... 680 32.3.2 再论Runtime Spy.. 681 32.3.3 侦查WebSphere Studio.. 681 32.4 用Performance Monitor避免 性能衰减...... 688 32.4.1 安装..... 689 32.4.2 示例的使用..... 689 32.5 特定于Eclipse的性能问题的 通用解决方案...... 691 32.6 本章小结...... 692 32.7 参考文献...... 692 第33章 Swing互操作性 693 33.1 在视图和编辑器中嵌入 AWT和Swing... 693 33.2 启动-编辑集成...... 698 33.2.1 调用模式..... 699 33.2.2 提升最终用户的使用 经验..... 699 33.2.3 常见的集成问题..... 700 33.3 ABCEditor示例——进程 内调用...... 700 33.3.1 用于外部编辑器的 编辑器扩展..... 700 33.3.2 添加Workbench感知 ——资源同步..... 702 33.3.3 添加Workbench感知 ——工具首选项..... 703 33.3.4 处理系统退出..... 704 33.4 示例概述...... 704 33.5 本章小结...... 704 33.6 参考文献...... 705 第34章 OLE与ActiveX互操作性 707 34.1 Eclipse中的COM支持...... 708 34.1.1 内嵌的OLE文档..... 708 34.1.2 内嵌的ActiveX控件..... 708 34.2 COM容器支持...... 709 34.2.1 创建OleFrame对象..... 709 34.2.2 创建OleClientSite对象.... 709 34.2.3 激活OLE对象..... 710 34.2.4 钝化OLE对象..... 711 34.2.5 Eclipse OLE编辑器 支持..... 711 34.2.6 创建OleControlSite 对象..... 712 34.2.7 激活OleControlSite 对象..... 713 34.3 OLE自动化——访问已 扩展的行为...... 713 34.3.1 OLE exec命令..... 714 34.3.2 IDispatch接口..... 715 34.3.3 方法..... 716 34.3.4 不带参数的调用..... 716 34.3.5 Variant类型..... 717 34.3.6 带参数的调用..... 717 34.3.7 属性..... 718 34.3.8 事件和属性侦听器..... 720 34.4 示例概述...... 721 34.5 本章小结...... 721 34.6 参考文献...... 722 第Ⅵ部分 练 习
易语言5.1 相对于易语言5.0更新说明:   支持静态链接其它编程语言(如C/C++、汇编等)编译生成的静态库(.LIB或.OBJ),但仅限于COFF格式,支持cdecl和stdcall两种函数调用约定。   使用说明如下:函数声明和调用方法与DLL命令一致;“库文件名”以.lib或.obj为后缀的将被视为静态库,可使用绝对路径或相对路径(相对当前源代码所在目录),如依赖多个静态库请分别列出并以逗号分隔;“在库中的对应命令名”请务必准确填写静态库中公开导出的符号名称(C函数(cdecl)编译后,符号名称通常是在函数名称前加下划线(_));“在库中的对应命令名”以@开头表示以cdecl方式调用,否则表示以默认的stdcall方式调用;各参数声明要与其定义一致。   请参考易语言安装目录内的例程:samples\静态编译\调用LIB和OBJ 1. 静态编译方面的改进和优化。 2. 符号重命名程序(resym.exe)增加对.obj文件的支持,并更新了文档(sdk\static_docs)。 3. 编译生成安装软件时已支持打包静态编译后的程序,但需事先静态编译出该程序。 4. 升级加密狗驱动程序,增加了对 Windows 7, Vista 等操作系统的支持。 5. 操作系统界面功能支持库(shell.fne)中的“执行()”命令增加一个参数“窗口显示方式”,作用与核心库“运行()”命令的同名参数一致。 6. 数据库操作支持库增加读写长整数字段的功能,但受限于系统接口暂不能读写超出整数范围的数值。 7. 修改高级表格支持库,通过鼠标调整行高列宽时不改变当前光标行列号。 8. 修改BUG:在IDE中打开源代码文件(.e)后,高级选择夹组件不能正确切换到“现行子夹”属性设定的子夹。 9. 修改BUG:矢量动画支持库中的“矢量编辑框”组件在光标位于组件右下角时按右光标键进入下一行会导致显示错误。 10. 修改BUG:矢量动画支持库中的“矢量编辑框”组件在光标位于组件左上角时按左光标键进入前一行可能会导致显示错误或内存申请失败。 11. 修改BUG:网络传送支持库在使用代理下载时可能会导致程序崩溃。 12. 修改BUG:超级列表框.置列图片()有时功能不正常或导致随机错误。 13. 修改BUG:Sqlite3数据库支持库中的“Sqlite记录集.绑定参数()”命令不支持汉字/UTF-8。 14. 修改BUG:VCL相关支持库部分组件在修改个别属性或调用个别方法后不可见,并改进了Delphi版本的支持库SDK。 15. 修改BUG:高级表格在列类型为数值型时,添加新行且省略标题的情况下,会导致程序异常。 16. 修改BUG:数值计算支持库“大数.四舍五入()”命令在最高位进位时,会导致程序异常。 17. 修改BUG:办公组件支持库打印进度对话框的标题和用户设置的内容不一致。 18. 修改BUG:办公组件静态编译后无法正常销毁。 19. 修改BUG:应用接口支持库“取内存容量信息()”命令不能正常处理大于2G的内存。 20. 修改BUG:超级列表框在属性“整行选择”为真时,鼠标单击第一列右面也会导致第一列中的选择框被选中或取消选中。 21. 修改BUG:Sqlite3数据库支持库中“Sqlite数据库.取错误文本()”返回的文本是UTF-8编码(应是GB18030编码)。 -------------------------------------------------------------------------------- 易语言5.0 相对于易语言4.x更新说明(2010/02/01):   增加静态编译功能,支持挂接第三方链接器(比如VC6中的link.exe)。   静态编译后的易语言可执行程序(exe)和动态链接库(dll),运行时不再依赖任何支持库文件,文件尺寸更小(相对以前的独立编译),PE结构更合理(取消了“易格式体”),加载速度更快,而且有效解决了“病毒误报”和“易被脱壳”的难题。   为实现静态编译,易语言编译器、核心支持库、集成开发环境(IDE)等均有重大更新,支持库开发架框有扩展性调整,绝大多数官方支持库都已针对静态编译完成自身改造并提供静态库。   目前绝大多数官方支持库均已支持静态编译,只有极少数不支持静态编译:vclbase.fne, jedi.fne, com.run/cominf.run/ocx.run。   第三方支持库,由源代码作者按照静态编译技术文档(参见sdk\static_docs)完成自身改造并提供静态库后,可支持静态编译。外部OCX组件和COM组件,不支持静态编译。   此次重大版本升级不影响以前的源代码(.e)和模块(.ec)。只要代码或模块中未用到“不支持静态编译”的支持库、COM/OCX等,都可以静态编译。以前编译好的模块(.ec)甚至不需要重新编译即可直接支持静态编译。   支持库开发框架调整是扩展性调整,比较好的做到了向前向后兼容。即,新版支持库可被旧版易语言或易程序使用,旧版支持库也可被新版易语言或易程序使用(只是不支持静态编译)。   静态编译后的易语言EXE/DLL之间不能再共享譬如窗口、窗口组件等类似资源,对于已经静态连接到一个EXE/DLL中的支持库,该支持库中的数据或资源将不能再被其它EXE/DLL中所使用的同名支持库访问。这是因为代码被分别静态链接接到各个独立模块(EXE/DLL)中。 版权所有 (C) 2009 - 2010,保留所有权利。 大连大有吴涛易语言软件开发有限公司 http://www.eyuyan.com -------------------------------------------------------------------------------- 易语言5.0测试版3相对于测试版2更新内容: 1. 支持设置程序(EXE)图标 2. 支持设置使用通用组件库6.0 3. 支持“链接后动作(post_link_action)”(参见tools\link.ini中注释) 4. 重新整理所有官方支持库的静态库,有望彻底解决链接时可能出现的符号冲突 5. 全面取消静态编译中的人为功能限制(此前有最多5个支持库同时参与静态链接等功能限制) 6. 公开易语言静态编译技术文档(参见sdk\static_docs),便于第三方支持库作者针对静态编译进行支持库改造 7. 修改以下多个BUG: 1) 修改在静态编译的DLL中调用其它DLL失败的BUG 2) 修改静态编译后“选择列表框”在“单选”属性为真时不显示项目内容的BUG 3) 修改核心库中“播放音乐”命令在没有声卡或声卡被禁用时未正确释放资源的BUG 4) 修改静态编译后“读配置项”命令在第三个参数“配置项名称”为空文本时导致程序崩溃的BUG 5) 修改高级选择夹中的组件在窗口载入后强制得到焦点的BUG 6) 修改MYSQL支持库跨静态编译的EXE和DLL传递连接句柄和记录集句柄无效的BUG(改动较大,可能会产生兼容性问题,我们已经仔细测试,也请使用到此库的用户帮助我们多多测试,以便及早发现问题,谢谢) 7) 其它修改 注意:静态编译后的易语言EXE和DLL之间不能再共享“某些”句柄或资源,这一点和原动态连接时的程序行为不能保持一致,使用时请务必设法避免此类用法(MYSQL支持库我们作了特别处理)。 注意:静态编译后常量数据位于PE文件的.rdata段中,只可读不可写,编程时请避免修改它们。譬如以下的代码,静态编译后就可能会出现问题: a = " " GetWindowTextA(hWnd, a, 20) 正确的代码为: a = 取空白文本 (20) GetWindowTextA(hWnd, a, 20) 易语言5.0测试版2相对于测试版1的更新内容: 1. 修改了很多由于符号冲突而导致无法完成静态编译的BUG 易语言5.0测试版1发布于2009/12/28,是易语言5.0静态编译版第一个公开测试版本 ******************************************************************************** ** 以下是易语言4.x及以前版本的升级信息 ******************************************************************************** 易语言4.14版相对于4.13更新说明: 对易语言核心支持库、编译器、开发环境的更新: 1. 修复了打印机对象的自定义纸张尺寸的支持问题 2. 修复了打印机对象的打印份数的支持问题 3. 修复了滑块条的选择长度不能到最大的问题 对其它支持库的更新: 1. 修改XML解析支持库,解决“XML树.取节点值文本()”返回的文本会失效的BUG。 2. 修改高级表格支持库,解决在鼠标按下和抬起之间收到时钟周期事件的情况下,无法收到“被单击”事件的BUG。 3. 修改扩展界面支持库三,解决单击卷帘菜单后导致日期框不能弹出下拉窗口的BUG。 4. 修改XP风格支持库,解决GDI资源泄露,以及在使用通用组件库六时组合框标题出现重影的BUG。 5. 修改扩展界面支持库一,解决树形框项目无法通过鼠标点击进入编辑状态的BUG。 6. 修改高级表格支持库,解决插入行/插入列在未指定行号/列号的情况下插入位置不正确的BUG。 7. 修改文本语音转换支持库,增加“机读文本.重新创建并初始化()”方法。 8. 修改应用接口支持库,增强“取快捷方式目标”命令功能,可以获取目标、参数、启始位置、图标、运行方式、快捷键、备注等信息。 9. 修改扩展界面支持库三,解决高级选择夹会导致所在窗口的收不到“首次激活”事件的BUG,相应地修改了核心库和开发环境。 10. 为所有支持库文件统一添加了版本信息。 -------------------------------------------------------------------------------- 易语言4.13版相对于4.12更新说明(2009/4/13): 对易语言编译器、开发环境、核心支持库的更新: 1. 修改核心支持库,为窗口增加一个“窗口类名”属性。 2. 修改核心支持库,为外部数据库的连接类命令增加参数“不显示ODBC连接对话框”。 3. 修改核心支持库,解决用“播放音乐()”播放“音频采样大小为24位”的WAV文件时产生噪音的BUG。 4. 修改编译器,可以为编译出的EXE、DLL添加版本信息(通过“程序配置”设定)。 5. 修改集成开发环境,自动记忆非独立编译时是否写出依赖文件的选项。 6. 大幅提高编译速度。 对其它支持库的更新: 1. 修改高级表格支持库,在双击单元格进入编辑状态后,不能收到第一个“字符输入”事件的BUG。 2. OpenGL支持库中的部分英文名称常量已改为中文,并统一在所有常量名称之前加前缀“GL_”,以减少与其它库的冲突机率。 3. 互联网支持库中的“FTP目录列表”命令返回的文件时间改为FTP服务器返回的原始时间,不做任何时区转换。 4. 互联网支持库中的“置代理服务器”命令增加了参数,用于支持代理服务器用户认证。 5. 修改控制台操作支持库中“控制台对象.取显示区大小”的参数名称及其说明。 6. 修改外部数据库在4.12版中导致的不兼容问题,并增加了对MS SQL Server数据库中image和text字段类型的说明。 7. 修改扩展界面支持库一,禁止透明标签在父窗口刷新时自动刷新,以解决其导致窗口刷新缓冲的问题。 8. 改进应用接口支持库中“设置屏幕分辨率”命令。 9. 修改外部数据库在“表中记录数为零”时可能导致程序崩溃的BUG。 10. 修改扩展界面支持库一,修改“超级列表框.取标题()”不能返回长度大于256的包含汉字的文本。 11. 修改扩展界面支持库一,为“超级列表框.查找表项()”增加可空参数“列索引”,以指定查找哪一列。 12. 修改扩展界面支持库一,添加“工具条.置标题()”方法。 13. 修改高级表格支持库在表格空白处(所有单元格之外)单击鼠标导致当前光标处单元格自动进入编辑状态的BUG。 14. 修改扩展界面支持库一,为“超级列表框”增加“检查框状态被改变”事件。 15. 修改扩展界面支持库一,为“树形框”增加“是否已加粗()”方法。 16. 修改扩展界面支持库一,为“树形框”增加多态检查框功能,相应地添加了多个与检查框相关的属性、方法和事件。 17. 修改高级表格支持库,允许“复制选定文本()”“剪切选定文本()”在“允许选择块”属性为假时复制剪切当前单元格中的文本。 18. 修改扩展界面支持库三,为“高级选择夹”增加“不点燃选中子夹”属性。 19. 修改XML解析支持库,增加写出CDATA数据功能,解决解析XML时错误的丢弃换行和TAB字符的BUG,解决读取节点值时对CDATA数据进行转义处理的BUG。 20. 修改扩展界面支持库一,超级列表框“置列图片()”导致列图片被强行设置到标题左边的BUG。 21. 修改通用对象支持库,“快速字节集对象.倒找字节集()”的一个BUG。 22. 修改扩展界面支持库一,“超级列表框.取标题()”在表项标题为空的情况下可能会返回乱码文本的BUG。 23. 修改农历日期支持库,内部农历数据错误(2013年四五月份大小进错位)的BUG。 24. 修改远程服务支持库,“远程服务.启动()”第三个参数的描述与实际不符的BUG。 25. 修改应用接口支持库,“取硬盘信息()”命令,将尽量获取能够获取的信息(有时只能获取部分信息)。 26. 修改文本语音转换支持库,为数据类型“机读文本”的方法“文本到语音()”增加超时等待和事件反馈功能,并增加方法“是否可用()”,并在该对象创建时,自动选择一个“可能”为中文的语音库(通过名称猜测)。 27. 修改MySql支持库,第二次连接失败会导致前一次连接句柄无法使用的BUG。 28. 修改VCLBase支持库,解决VCL组件“对齐”属性和VCL滚动框失效的BUG。 其它更新: 1. 修改“树型框操作类.e”例程,加入项目时检查索引数组下标越界的BUG -------------------------------------------------------------------------------- 易语言4.12版相对于4.11更新说明: 对易语言编译器、开发环境、核心支持库的更新: 1. 修改“文件是否存在”命令不支持“路径字符大于127的文件”的BUG,感谢易友企达软件。 2. 修改“到全角”命令对“~”转全角字符结果不对的BUG,感谢易友叮咚茶。 3. 修改窗口“位置”属性和“可视”属性在特定情况下相互冲突的BUG,感谢易友牛非牛。 4. 修改核心支持库,窗口的“销毁()”命令,在销毁窗口后,不能再次载入窗口的BUG,感谢易友hsy_jj,上上签。 5. 修改核心支持库,窗口底图方式增加“图片缩放”功能,感谢易友世恒。 6. 修改核心支持库“组合框.可有焦点()”命令,在组合框获得焦点后,还是返回“假”的BUG,感谢易友lilho_e。 7. 修改核心支持库“销毁”方法增加了一个参数“立即销毁”。 8. 修改核心支持库,画板在调整尺寸后,不能重画的BUG,感谢易友浮云缭绕。   9. 修改编辑框在字体变大,编辑框高度自动调整后,原来的编辑框仍然会留在窗口上的BUG,感谢易友水影。   10. 修改核心支持库“插入字节集”命令的帮助说明,感谢易友低调生存。   11. 修改“变体型”对数值型数组数据支持不完善的BUG,感谢易友神2。   12. 修改核心支持库,“横向滚动条”和“纵向滚动条”位置被改变后,禁止由“真”变为“假”的BUG,感谢易友ming1228。   13. 修改窗口“在任务条中显示”属性和“总在最前”属性在特定情况下相互冲突的BUG,感谢易友ok5168。   14. 修改易语言开发环境,为自定义数据类型时,粘贴代码,数据类型为“”的BUG,感谢易友叮咚茶。   15. 修改核心支持库“组合框.禁止=真”,在给“组合框.列表项目”属性赋值后,“组合框.禁止=真”失效的BUG,感谢易友子涵。 16. 修改易语言编译器,可以指定独立编译的程序运行时的支持库释放目录,感谢易友西风。 17. 修改核心支持库,“其它”类别增加了六个命令(“取组件名称”“寻找组件”等),用作支持窗口组件反查。 18. 修改核心支持库“播放音乐()”命令,个别WAV文件不能播放的BUG,感谢易友破天一箭,流川枫,别康桥,得心应手,一帆风,z284949127,上等兵,yanshi810,xushushun。 19. “特殊功能支持库”中的“置入代码”命令已移入核心库,原有命令已被隐藏。 20. 在开发环境中打开被调用命令的参数引导(Alt+→)后,对每个参数的说明已可体现出是否为数组类型。 21. 修改“取配置节名”在节名个数超过一定数量时可能会导致返回值出错的BUG。 22. 修改“取对象类型”命令取不到FNR支持库中窗口组件类型名称的BUG。 对其它支持库的更新: 1. 修改应用接口支持库“取窗口标题”命令在指定窗口标题为空的情况下返回窗口类名称的BUG,感谢易友叮咚茶。 2. 修改应用接口支持库“取文件版本信息”在失败的情况下返回上次结束的BUG,同时添加逻辑型返回值,感谢易友yhan。 3. 修改应用接口支持库“取窗口类名”命令在指定窗口不存在的情况下取出窗口类名为乱码的BUG。 4. 修改通用对象支持库中“快速文本对象”“快速字节集对象”没有复制构造函数的BUG,感谢易友wentianxin。 5. 修改应用接口支持库“截取屏幕区域”命令未及时释放GDI资源的BUG,感谢易友醉。 6. 修改数值计算支持库“大数.导入文本()”,允许参数文本以一个或多个0开头,感谢易友王军。 7. 修改应用接口支持库“取窗口标题”在窗口标题以汉字开头的情况下可能返回空文本的BUG,感谢易友叮咚茶。 8. 修改数据结构支持库,为数据类型“表”添加方法“删除键值对”“删除所有键值对”,感谢易友.end。 9. 修改VCLBase支持库,因为设置数据类型“键值编辑器”的“可调整列位置”属性时会引发异常“可调整列位置 是不支持的选项”,所以将其删除,感谢易友MMiao79,nfh_china。 10. 修改应用接口支持库“取窗口标题”最多只能返回511个字符的BUG,感谢易友叮咚茶。 11. 修改数据结构支持库中数据类型“表”未及时释放内存的BUG,感谢易友.end。 12. 修改应用接口支持库“取窗口标题”命令取得的标题比实际标题少1到2个字符的BUG,感谢易友叮咚茶,wentianxin。 13. 修改高级表格在表头列类型为非文本的情况下“取数据()”返回结果不对的BUG,感谢易友小熊。 14. 修改应用接口支持库“取窗口标题”命令在取其它进程中的窗口标题时取出的文本不完整的BUG,感谢易友叮咚茶。 15. 修改扩展界面支持库一“工具条.取状态()”命令说明中的笔误。   16. 修改windows媒体播放器“鼠标按键被按下”事件中,第一个参数“鼠标按键”说明中的笔误,感谢易友xyx20021129。   17. 修改热键框“功能键”的属性名称,感谢易友mingriver。 18. 修改高级表格支持库,解决在部分打印机中打印不出图片的BUG,感谢易友97998。 19. 修改数据图表支持库,解决“柱状图控件”与“曲线图控件”在第一个X轴标注文字为空文本的情况下,导致X轴其它标注文字显示不完整的BUG,感谢易友wentianxin。 20. 修改高级表格,“回车键功能”属性增加“3.无”,感谢易友hswad。 21. 修改数据库支持库在记录集未置数据库连接的情况下调用“删除(3)”导致程序异常退出的BUG,感谢易友王庆。 22. 修改外部数据库组件不支持MS SQL Server中的nvarchar类型的BUG,感谢易友见易思迁。 23. 修改外部数据库组件无法读取MSSQL中binary类型字段的BUG,感谢易友NightCAT。   24. 修改外数数据库.查询()之后自动定位到首记录,感谢易友见易思迁。 25. 修改远程服务支持库在客户端连接失败的情况下出现socket句柄泄露的BUG,感谢易友readyisme。 26. 修改数据库支持库“记录集.写字段”在字段名称不存在的情况下也返回真的BUG,感谢易友liyunxing。 27. 修改高级表格,置图片多次GDI资源泄露问题,感谢易友borisc。   28. 修改超级菜单,当菜单条不可见时在代码中修改菜单的可视属时,弹出菜单的子菜单标题不可见的BUG,感谢易友搞怪。 29. 修改数值运算支持库大数除法的一处BUG,感谢易友zhen。 30. 修改MySql支持库,添加了“取影响行数” 方法,感谢易友浮云缭绕。 31. 修改高级表格调整行列数时未正确处理现有合并单元格的BUG,感谢易友wentianxin。   32. 修改互联网支持库,“HTTP读文件”命令支持读取HTTPS协议文件,感谢易友季翔。 33. 修改XML解析支持库,在连续两个自结束节点()存在时可能导致导入失败的BUG,感谢易友.end。 34. 修改XML解析支持库,允许XML文件中双引号之间的属性文本中存在任意字符,包括,感谢易友技术支持部、user190。 35. 完善XML解析支持库,增加对CDATA的支持,和XML文本格式化功能,感谢易友goomoo。 36. 完善XML解析支持库,导出到文本或字节集时必要的时候使用自结束节点格式,感谢易友goomoo。 37. 修改应用接口支持库,完善了“是否与互联网连接”和“是否登入网络”的命令说明,并隐藏了后者,感谢易友mijac。   38. 修改数值计算支持库,“曲线拟合.三次样条插值()”的第二个参数“三次样条方程系数”可以直接接受“曲线拟合.三次多项式方程()”的计算结果作为参数,感谢易友搞怪。 39. 修改高级表格支持库,增加“表头被单击”“表头被双击”事件。 40. 修改高级表格支持库,将属性“表头可单击”更名为“响应表头被单击”。 41. 修改扩展界面支持库一,在主窗口刷新时透明标签没有及时刷新的BUG,感谢易友地球销售代表。 42. 修改VCLBase支持库,高级分隔条“高亮渐变起始颜色”属性名称重复的BUG。 其它更新: 1. 更新了易语言知识库(ESDN)(仅在完全安装版中提供)。 2. 增加了“硬件操作精解-精简版”教程(仅在完全安装版中提供) 3. 在“行业控件”类例程中新增“Grid++report报表控件”。 4. 在“行业控件”类例程中新增“滴答报表控件”。 5. 在“行业控件”类例程中新增“skinsharp皮肤控件”。 6. 在“硬件控制”类“加密锁”例程中新增“ET199”。 7. 修改易语言安装制作程序,允许在开始菜单生成多级程序组(目录),感谢易友银戒指、电子商务。 8. 修改远程服务支持库例程“网络数据库中间件.e”中删除意外断开连接客户的BUG,感谢易友雨纷飞。   9. 修改了购买易语言的说明信息,由学习版50元,改为免费,感谢易友majiyunsea。 -------------------------------------------------------------------------------- 易语言4.11版相对于4.10更新说明: 对易语言编译器、开发环境、核心支持库的更新: 1. 修改易语言编译器“‘调用外部DLL命令的程序’执行结束后未释放该DLL”的BUG,感谢易友企达软件。 2. 修改易语言编译器编译动态链接库时提示“寻找指定库命令失败”的BUG。 3. 修改易语言开发环境,在调试状态下允许通过双击设计窗口中的组件跳转到对应的事件处理子程序。 4. 修改易语言开发环境“在窗体设计器中拖动组件导致GDI资源泄漏”的BUG。 5. 修改易语言开发环境,解决了程序集名称过长不显示程序集名称选择夹的BUG。 6. 修改核心支持库,窗口的“销毁()”命令改为通过PostMessage间接实现。 对其他支持库和相关例程的更新: 1. 修改支持库例程“INI手术室.e”,在勾选“是否使用Windows通用组件库6.0版”后编译,工具栏上的图标无法显示的BUG。 2. 修改扩展功能支持库一“当窗口总在最前时,气球提示框会被窗口挡在后面”的BUG。 3. 修改扩展功能支持库一“设置文件拖放”的错误,感谢易友叮咚茶。 4. 修改MySql支持库“读字段值”,当参数“字段索引”被传入类型为小数的参数值后,读取失败的BUG。 5. 更新多线程支持库:启动线程() 增加一个可选参数,用于接收线程句柄;并增加以下命令:等待线程,强制结束线程,关闭线程句柄。感谢易友zhe001。 6. 修改保密通讯支持库可能导致程序异常退出的BUG。 7. 修改高级表格预览时表格线不显示的BUG,感谢易友一帆风。 8. 修改高级表格选择块时鼠标回到首选择单元格致使该单元格自动进入编辑状态的BUG,感谢易友民政,wanwan5。 9. 修改农历日期框被禁止后文本和按钮不变灰的BUG,感谢易友p_anch;修改农历日期框控件默认大小为200*24。 10. 修改XP风格支持库“应用XP风格后令单选框文本颜色与选择框文本颜色失效”的BUG,感谢易友yulimate。 11. 修改VCLBase支持库中“单一实例”组件,“标识文本”属性为空文本时组件功能失效的BUG。 12. 修改数据操作支持库“记录集.读字节集()”读取失败的BUG,感谢易友rsrs168,xuejsh。 13. 修改DirectX支持库“输入设备.置鼠标边界()”命令说明中的笔误。 14. 修改高级表格累加公式功能可能累加其它列的BUG,并允许结果列小于开始列,感谢易友浮云缭绕。 15. 修改高级表格在粘贴“类CSV”格式文本时错误处理连续分隔符的BUG,感谢易友风精灵。 16. 修改高级表格在列类型为选择型时取不出表头文本的BUG,感谢易友恶人磨。 17. 修改可执行数据转换支持库令转换后的正则表达式支持库无法载入的BUG。 18. 修改高级表格,增加了“可否被编辑”事件,可在此事件中返回假以阻止当前选中单元格进入编辑状态,感谢易友123yizheng123。 19. 增加超级列表框状态图片组及其索引的说明,索引不能大于14(Windows的局限),感谢易友企达软件。 20. 优化调整Java支持库中JVM的查找及加载策略。 21. 修改XP风格支持库令分组框文本颜色无效的BUG,感谢易友破天一箭。 22. 修改易语言下载快车例程在程序已启动情况下新建下载任务时获取的URL缺少最后一个字符的BUG,感谢易友520zone。 23. 修改数据操作支持库中“记录集.删除(3)”不能删除所有记录的BUG,感谢易友rsrs168。 24. 修改数据库操作支持库有时取不到记录集记录数量的BUG,感谢易友h179635532。 25. 修改树形框“图片组被重新赋值后导致之前动态加入的项目丢失”的BUG,感谢易友菜鸟老大。 26. 修改高级表格“修改单元格数值时导致计算列无穷递归计算”的BUG,感谢易友一帆风。 27. 修改数值计算支持库“计算大数相乘时存在递归进位的情况下导致结果出错”的BUG,感谢易友chegjigfg。 28. 修改网络通讯支持库“网络服务器.断开连接()”导致CPU使用率100%的BUG,感谢易友尘土.飞扬,.end。 29. 修改数值计算支持库求实矩阵逆的BUG(注意不再返回矩阵行列式),感谢易友wuestuary。 30. 修改MySql支持库写入空字节集失败的BUG,感谢易友angelye。 31. 修改高级表格最后一行(或行)只显示半行(或列)而没有出现滚动条的BUG,感谢易友cbw,liweiyong和zye7504。 32. 修改高级表格,用鼠标或键盘选中高级表格某单元格时使其尽量完整显示(而不是只显示单元格上边或左边一部分),感谢易友 esir。 33. 修改易语言完整版安装程序“未选中安装多媒体教程的情况下仍然安装了多媒体教程”的BUG,感谢易友秋风下的落叶。 34. 网络通讯支持库网络服务器、网络客户端和网络数据报的“接收”方法均增加一个参数,用于返回是否接收成功。感谢易友.end。 35. 修改WORD2000支持库Word程序的文档即将保存事件的第二个参数修改无效的BUG,感谢易友97998。 36. 修改DirectX支持库“MIDI音乐.播放()”不支持含空格的文件名的BUG,感谢易友张飞,klasp。 37. 修改应用接口支持库“取网卡信息列表()”命令消耗大量内存且不释放的BUG,感谢易友伟业,花无心。 38. 修改农历日期支持库内部取节气的一处数据错误,感谢易友净莲。 39. 修改超级列表框不能通过对“现行选中项”属性赋值-1从而取消选中现行选中项的BUG,感谢易友zye7504。 40. 修改超级菜单支持库,在没有菜单条的窗口上放置一个超级菜单组件,运行时在标题栏点右键导致程序异常退出的bug,感谢易友狼性本色。 41. 修改超级列表框多次调用“置列图片(-1)”导致程序无故退出的BUG,感谢易友redxblue。 42. 修改应用接口支持库“是否与互联网链接()”未及时关闭网络连接句柄的BUG,感谢易友zzy90。 43. 修改超级列表框表项编辑对话框删除表项时未同时删除子表项的BUG,感谢易友TLSWR。 44. 修改MySql支持库"取字段属性"方法返回的字段属性值与字段类型常量无法对应的BUG,感谢易友gaoheran。 45. 修改互联网支持库“HTTP读文件”命令不能读取非80端口URL的BUG,感谢易友goomoo。 46. 修改超级列表框刷新问题和图标显示问题。 47. 增加超级列表框插入表项的帮助说明,“类型”属性为“大图标列表框”或“小图标列表框”的情况下,将始终在所有表项的最后插入新的表项,感谢易友redsleaf。 48. 修改超文本浏览框,补充完善了对事件“已就绪”和“载入完毕”的说明,感谢易友qq136013347。 49. 修改超文本浏览框未释放BSTR指针的BUG,感谢易友东灿。 50. 扩展界面支持库二“提取加入图片”命令增加一个参数以提取小图标,感谢易友redxblue。 51. 修改超级编辑框“最大允许长度”属性为0时最大允许输入长度仍被限制为64K的BUG,感谢易友红花。 52. 修改扩展界面支持库二“RTF到纯文本”命令无法处理\emdash\lquote\rquote等殊符号的BUG,感谢易友zjc2008。 53. 修改扩展界面支持库二超级编辑框设定字符格式为“#禁止更改”后无法取消“禁止更改”的BUG。 54. 修改超文本浏览框的逻辑型属性或逻辑型方法返回值可能有误的BUG,感谢易友wincom1。 55. 修改IP编辑框无法得到“获得焦点”和“失去焦点”事件的BUG,感谢易友hedogn,poplarshine。 56. 修改IP编辑框的默认窗口尺寸为104*20。 57. 为IP编辑框增加“地址被改变”事件,感谢易友zjzqs。 58. 修改压缩解压支持库“生成的压缩包内文件日期和解压缩后文件日期与原被压缩文件日期不符”的BUG,感谢易友wanwan5。 59. 修改易语言知识库中办公组件帮助文档中的笔误,感谢易友sxfxx。 60. 修改易语言知识库中“取网卡信息列表”命令例程有重复的程序集名称导致程序无法编译的错误,感谢易友cjdn。 61. 修改VCL相关支持库中在组件事件中销毁窗口可能导致程序非法访问内存的错误,感谢易友redxblue,nfh_china。 62. 修改VclBase支持库中位图按钮类型为“确认”、“是”时修改按钮标题后在运行时不显示按钮图片的BUG,感谢易友redxblue。 63. 扩展功能支持库一增加“拖放树型框项目”命令。 其它更新: 1. 在“行业控件”类例程中新增“Grid++report报表控件”。 -------------------------------------------------------------------------------- 易语言4.10版相对于4.06版(修订版1)更新说明: 1. 更新易语言开发环境和核心支持库,提供对VCL控件的更好支持。 2. 增加了易语言支持库开发包(SDK),目前有C++版本和Delphi版本。 3. 增加了两个用Delphi开发的支持库,VCLBase 和 JEDI,含大约20个封装自VCL的易语言窗口组件。 4. 增加了“硬件控制”方面的多个例程。 5. 增加了“网友优秀作品”例程。 6. 修改开发环境主程序,独立编译前提示,修改整体搜索的BUG。 7. 修改了通过右键菜单新建的.e文件不能直接保存的问题。 8. 修改了日期框自动跳转日期的问题。 9. 修改了MySQL支持库“执行SQL语句”的问题。 10. 修改了特殊功能支持库中“调用子程序”的问题。 11. 修改了“数据库语言转换器.e”转换出现乱码的错误。 12. 修改了“数据库管理器.e”有密码打开失败的错误。 13. 修改了“MIDI测试.e”音乐文件在桌面不能播放的错误。 14. 修改了多媒体支持库“CD播放.是否有CD”的BUG。 15. 修改了Excel支持库设置字体下划线无效的BUG。 16. 修改了“气球提示框”单击鼠标或按键导致提示框关闭未发送“提示框即将隐藏”事件的BUG。 17. 修改了“shellEx支持库”注册热键的BUG。 18. 修改了“网络通讯支持库”内存泄露的BUG。 19. 修改了小数型数据到文本函数多次执行出错的问题。 20. 修改了正则表达式“搜索全部”时假死的问题,和程序中多次频繁调用正则容易出错的问题。 21. 修改了多个支持库例程。 22. “可执行文件数据转换”支持库的代码打乱功能得到了较大的提升,不同的打乱码将得到差异性很大的结果,因此用户可以尝试使用不同的打乱码来从技术上应对杀毒软件的误报。 关于可执行文件数据转换,说明如下: 1、多次重复转换可能会导致转换后的可执行文件或易语言支持库无法使用,请确保只转换一次; 2、对于非易语言编译的可执行文件或DLL,不保证转换后能够正常使用; 3、如果想转换易语言独立编译可执行文件,应该在易语言的系统设置里面直接设置打乱码后进行编译转换,而不能在独立编译后再使用本命令来转换; 4、尽量在易语言系统设置里面设置打乱码后进行编译转换,在这种情况下,所编译出来的可执行文件将得到最好的打乱效果。 -------------------------------------------------------------------------------- 易语言4.06版(修订版1)相对于4.06版更新说明: 1. 未注册情况下,除不提供编译功能外,不再有其它任何限制,即等同于以前的学习版功能。 2. 核心库中播放音乐功能已支持多个音乐同时播放(混音)。 3. 修改了扩展界面支持库二中动画框PNG图片透明的问题。 4. 修改了可执行文件数据转换支持库,在Win98下转换的支持库存在载入失败的问题。 5. 修改了数据库支持库不能正常读写双精度小数的问题。 6. 修改了mysql支持库“读字段值”、“查找记录”、“创建表”、“修改表”的问题。 7. 修改了编码转换支持库部分情况下不能正常进行编码转换的问题。 8. 修改了远程服务支持库不能同时启动两个服务器的问题。 9. 对以往支持库的相关例程做了修正更新。 10. 对安装包中的部分执行文件(.exe)进行了重新编译。 -------------------------------------------------------------------------------- 易语言4.06版相对于4.05版(修订版1)更新说明: 1. 扩展界面支持库二中增加了动画框组件 2. 增加了可执行文件数据转换支持库,以应付一些使用落后的特征码查毒技术的杀毒软件,使其不再或很难对易语言编译出来的程序和易语言本身支持库误报. 3. "工具->系统配置->目的程序安全"选项中增加了编译结果打乱码设置,设置此选项后将会自动对"编译"、"独立编译"、"编译生成安装软件"菜单功能所产生的结果进行自动打乱。 4. 远程服务支持库修改了服务端和客户端线程句柄泄露的错误. 5. 高级表格支持库,在类型为“选择型”的单元格中按下空格键前后,将分别触发“将被编辑”“结束编辑”事件. -------------------------------------------------------------------------------- 易语言4.05版(修订版1)相对于4.05版更新说明: 1. 编译器,更正了“对全局数组变量和局部变量多次赋值可能无效”的BUG。 2. 核心库,更正了“取时间间隔”命令的BUG。 3. 扩展界面支持库三,更正了高级选择夹“无法删除表头字体”和“‘竖排子夹名称’属性为‘真’时子夹名称显示不完整”的BUG;外加一项改进:编辑“子夹管理”时可预览字体和字体颜色。 -------------------------------------------------------------------------------- 易语言4.05版相对于4.04版更新说明: 1. 对以往支持库和相关例程发现的问题做了修正更新。 2. 开发环境新增了剪辑历史处理和展开全部代码功能 -------------------------------------------------------------------------------- 易语言4.04版相对于4.03版更新说明: 1. 对以往支持库和相关例程发现的问题做了修正更新。 2. 增加了3个支持库: 自定义图形支持库 编码转换支持库 矢量动画支持库 -------------------------------------------------------------------------------- 易语言4.03版相对于4.02版更新说明: 编程环境新增快速跳转夹和书签支持。 系统新增长文本常量支持。 新增“代码编辑框”支持库 新增“通用对象支持库”,内含“快速文本对象”“快速字节集对象”等数据类型。 特殊功能支持库:新增“取文本”等三个命令。 Sqlite数据库支持库:“Sqlite表”新增“查找”方法;将Sqlite版本升级至目前最新的3.3.4版。 扩展界面支持库三:改进卷帘式菜单控件,允许修改非选中菜单中的项目属性;改进高级选择夹控件在表头样式为梯形时的外观显示;改进部分属性和方法的说明信息。 扩展界面支持库五:修改气球提示框控件在Windows98系统下字体不清晰的BUG;新增对的支持。 扩展界面支持库六:对多功能条控件进行的小的改进。 农历日期支持库:修改农历日期框控件调用“增减日期”“置农历日期”“置公历日期”等方法后未及时更新显示文本的BUG。 数据结构支持库:修改"链表.加入节点"方法有时不能按键值正确排序的BUG。 其它一些支持库的改进和修正 -------------------------------------------------------------------------------- 易语言4.02版相对于4.0版更新说明: 1、DLL命令调用功能全面增强,具体请参见核心支持库手册里面的“调用API.e”例程和相关文档。 2、新增位图操作和易LOGO两个支持库。 3. 核心库中的外部数据库组件被修正。 4、以下支持库被修正或增加新功能: 互联网服务支持库 网络传送支持库 mysql支持库 Sqlite数据库支持库:增加了20个命令以直接返回相关数据(而不是写入到参数变量中)。 扩展界面支持库三:增加了提示文本功能,同时更新了卷帘式菜单和高级选择夹的属性编辑对话框并增加了相关方法;在卷帘式菜单控件的“项目”属性编辑对话框中,如果项目名称为空文本,则显示为“未命名”,以便于用户以鼠标点击选中。 扩展界面支持库五:“汽球提示框”更名为“气球提示框”并增加“批量关联组件”方法,以方便用户动态指定提示文本;修改其“提示框即将弹出”事件的参数“手柄横向坐标”“手柄纵向坐标”,由屏幕坐标改为客户坐标,以方便用户处理。 数据图表支持库:曲线图和柱状图增加了“显示标注”和“提示文本”属性;鼠标指向曲线图和柱状图的相应区域时会有提示框弹出并显示当前数据值。 XML解析支持库:增加导入导出字节集功能,另外增加了9个命令以直接返回相关数据(而不是写入到参数变量中)。 -------------------------------------------------------------------------------- 易语言4.0版相对于易语言3.8正式版更新说明: 1、“新建”对话框布局改变,将一些新建项目进行了分类,大家可以在Samples和Wizard目录中组织目录,“新建”对话框会自动列出。 2、新的“文本代码编辑器”工具。 代码编辑方式是以文本方式编辑,在每一行程序编辑完成后不必回车确认,直接下移光标继续输入。或按[Shift+回车]可代替原单键[回车]形式。 可以将代码以文本方式复制到记事本,或从记事本将文本代码粘贴回来,系统自动恢复为程序代码。 “系统配置”中可以设置改变编辑区字体及字号。 “系统配置”中的“输入新语句后自动检查语法错误”项选中时,当光标在代码行末时回车,就可以编译当前行检查是否有语法错误,并在提示面板中提示出来。默认为选中。 若“系统配置”的“输入新语句后自动检查语法错误”项未勾选,代码编辑时将不会弹出错误提示,代码编辑后的运算符号不会规范整理,而会在调试或编译时给出错误提示,或使用全程提示工具检查,或通过按[Shift+回车]编译当前行进行检查。 3、新的“全程提示”工具,当用户将鼠标移至常量、变量、属性表等名称上停留片刻,会显示当前名称的相关信息。对未事先声明的变量不作任何提示。 4、新的“寻找替换管理器”工具。可以在当前程序集中进行寻找与替换。 5、新的“程序调试管理器”工具。新设计的“调用表”面板与“监视表”面板代替了原调试面板,具体使用与原来的调试方法类似,可用“查看表达式/变量”菜单查看当前子程序变量值。 6、新的“整体搜寻管理器”工具。提示夹中增加“搜寻1”、“搜寻2”两个面板。使用“整体搜寻”菜单命令可将搜寻结果显示在其中,并且可以对比查看。 7、新的“条件断点管理器”工具。新增“条件断点”菜单,可以设置断点时给定一组条件,方便调试,如果断点不是条件公式,就会自动转换为普通断点。 8、新的“组件排列管理器”工具。当没有安装扩展组件、OCX组件或COM组件时,不显示分类,当组件排列拥挤时,自动增加分类。 9、新的“配色方案管理器”工具。编辑代码区与属性表的配色方案已合并,且支持任意颜色自由定制,大家可将自定义的配色方案拷贝到Clr目录中,就可在列表中看到。 请使用菜单“工具”→“系统配置”→“程序显示”→“颜色配置”,在下拉列表中选择本Clr目录中的颜色配置文件。 10、“提示”面板中显示命令帮助内容时,将会显示当前命令所处的上级支持库分类信息,以利于用户查询所在支持库。 11、调试中断后回到代码编译界面,可将鼠标移到变量上查看变量值提示。 12、备注直接使用单引号标注,并兼容打开以前版本的代码自动改为单引号标注形式。 13、热键调整:如原直接使用键盘的方向键可展开命令,现在需要使用[ALT+方向键]才可以展开,“单步跟踪”热键有所改动。 编辑时原[F1]热键插入文件名称路径现改为[F2]热键插入。[F10]可删除一行,[CTRL+K]可屏蔽一行。 14、菜单调整:如“配置”子菜单移至“程序”菜单下,增加“条件断点”菜单,原“易向导”菜单改为“执行易向导”菜单.....具体请自行对比。 15、Samples目录中增加大量的经典例程,供大家学习交流。 16、Ecom易模块目录中新增若干易模块及例程。 17、易向导中增加“通用密码登录管理向导”及“OpenGL向导”。 18、系统配置对话框的“编译选项”中新增“是否使用Windows通用组件库6.0版”选项,默认不选中。如果选中,编译后的程序将使用6.0版风格的组件。 19、推出了以下新的支持库: 农历月历支持库中新增“农历月历”组件 拖放支持库 正则表达式支持库 进程通讯支持库 BT下载支持库 网络通讯支持库二 扩展界面支持库三中增加“高级选择夹”组件(本库必须在易语言4.0以上版本中使用) 应用接口支持库 OpenGL支持库 DirectX发支持库 SQLite数据库支持库 控制台操作支持库 扩展界面支持库五 20、办公组件支持库已升级,推荐大家使用该升级后的支持库。 21、新表格组件改名为高级表格以区分基本支持库中的表格,方便大家定义数据类型。 22、网络传送支持库更新及易语言下载快车已更新。 23、基本组件中的打印机组件已支持自定义纸张,“开始打印”方法中当“纸张”参数为-1时,可以自定纸张宽高。 24、“打印机”对象和“打印设置信息”数据类型中的打印纸类型新增了100多种扩展打印纸类型。 25、系统核心支持库中的“寻找字节集”和“倒找字节集”命令各增加一个参数。 26、窗口组件的基本事件中加入了“滚轮被滚动”事件,以支持鼠标滚轮编程。 27、核心库“其它”类别中增加了“DLL命令调用转向”命令,以支持程序中对非固定文件名DLL中的输出命令进行调用。 28、编辑组件的文本型属性时可以编辑多行文本。 29、组件箱右上角增加一个按钮,可以在组件图标排列与组件名列表中切换。 30、“输出调试文本”命令支持通用数据类型。 31、编译使用了易模块的易程序时,由过去仅在易语言安装目录ECOM下寻找所需要的易模块文件改为首先在易程序所处目录下寻找,然后再去ECOM目录下寻找。 32、易模块管理对话框中新增了“创建指定易模块文件的接口程序集”按钮。 33、为规范编程,多个易语言打开同一个源代码时,将会提示切换到打开的程序中,否则请另存为新文件名后再打开,以保护程序。但如果你用新建方式打开程序时,不受此保护。 34、修改了用户程序当支持库不存在时弹出的出错信息。 35、所有带图片组属性的组件选索引时支持直接通过选取图片组的方式输入。在索引项目后多了一个按钮,点击按钮后弹出图片组预选窗口,直接选中图片即可。 36、扩展界面库一中的树型框增加了“右键单击项目”事件。 37、系统颜色配置里面新增了“窗体设计器背景”项。 38、编译时实施了严格的重复名称检查,编译选项中新增“严格的重复名称检查”选项,为了兼容以前的程序,默认为不选中,建议将其选中。 39、支持库列表中增加排序功能,可按拼音顺序排列支持库。具体是支持库面板的鼠标右键菜单中增加“排序”子菜单。 40、核心支持库中的“窗口”数据类型增加了“置父窗口”方法。 41、核心库中的“数值转换”类中新增了“到字节”、“到短整数”、“到整数”、“到长整数”、“到小数”命令。 42、核心库中的“位运算”类中新增了“左移”、“右移”、“合并整数”、“合并短整数”命令。 43、核心库中的“变体型”数据类型新增“取字节集”方法,并且其“赋值”方法支持置入字节集类型数据。 44、核心库中的“载入”命令被改进,当以对话框方式载入不可视窗口时,不再强制显示并等待,而直接返回, 然后可以通过设置该窗口的可视属性为真来显示该对话框。此改进后,可以进行以下操作: 载入 (窗口1, , 真) 窗口1.标题 = "演示" 窗口1.可视 = 真 45、核心库中的“从字节集转换”命令更名为“取字节集数据”,并增加一个参数,以支持从字节集中随意取出部分数据。 46、核心库中的“打印机”对象有所改进,并且增加了四个方法用作在Windows2000/NT/XP下设置自定义纸张类型。 47、“支持库配置”对话框上方加入了查找功能。 48、“支持库配置”对话框下方增加了删除支持库按钮。 49、“系统配置”对话框内“颜色配置”部分增加了“导入”按钮。 50、左侧支持库列表中数据类型部分列入了成员事件并加入了全面的提示。 51、属性表下方的事件组合框内对已有事件子程序的事件进行了标记,并将自有事件和固定事件分开。 52、鼠标指针属性新增“手型”类型。 53、对列表式组件箱进行了排序。 54、窗口设计器中右键单击组件后所弹出的菜单内新增了“查看数据类型定义”菜单项。 55、组件右键菜单中加入“锁定”和“解除锁定”菜单,锁定组件时只能使用键盘的光标键移动或使用SHIFT的组合改变大小。 56、当前系统正在编辑一份易程序时,双击打开新易程序时,会弹出询问对话框,用户可以选择重新启动一份易语言系统打开程序。 57、输入备注时不再有提示框出现。 58、单行编辑框文字垂直居中。 59、恢复了调试变量表。 60、恢复了在行尾回车时自动询问增加未定义的变量、子程序、常量名(仅当“输入新语句后自动检查语法错误”系统设置被选中时有效)。 61、打印机对象改正了默认纸张的设置问题。 62、核心支持库增加“置错误提示管理”命令,用作支持用户自行提示严重错误信息。 63、核心支持库中的“选择夹”组件增加了“是否填充背景”、“背景颜色”两个属性,用作解决“隐藏自身”属性为真时选择夹内 一些子组件的刷新问题。 64、系统的“程序”菜单中新增“重新名称关联”菜单项。 65、加入了源代码加密功能。 66、核心库中“服务器”组件的“取回客户”方法支持在“数据到达”事件中使用。 67、核心库中“媒体播放”类别中增强了对MP3播放的支持。 68、核心库中“系统处理”类别中增加了“多文件对话框 ”命令。 69、编译器所支持语法格式改进,返回值支持直接引用其成员,如“a.方法1 ().a1.方法2 ()”语句格式现在已经可以使用。 70、系统的“工具->系统配置”菜单中新增“目的程序安全”选项夹。 71、系统的“编辑”菜单中新增“到最近修改处”菜单项。 72、改进了各种编程语言对易语言DLL的调用支持。 73、新增扩展界面支持库六、DirectX3D支持库。 74、自定义鼠标指针支持彩色。 75、易模块管理功能被去除,支持新的易模块引入功能,且易模块公开支持项目增多。 76、系统自带易模块中新增3D图形引擎支持易模块。 -------------------------------------------------------------------------------- 易语言3.8正式版(修正第二版)相对于3.8测试版的改动部分: 1、支持开发并使用易语言向导程序,具体例程请见lib\ewizard\samples目录下的“应用程序向导.e”及“API助手.e”文件。 2、源程序编辑窗口右键菜单中新增“收缩屏蔽”功能,可以用作一次性屏蔽大段代码。 3、系统不再默认载入所有支持库,而必须在支持库配置中指定。 4、源程序的载入速度得到提高。 5、推出了以下新的支持库: 易向导支持库 农历日期支持库 远程服务支持库 扩展界面支持库三 互联网服务支持库 邮件接受支持库 多媒体支持库 表格支持库 超级菜单支持库 保密通讯支持库 办公组件支持库 另外,图表支持库和表格支持库现在支持和打印机对象合作打印。 -------------------------------------------------------------------------------- 易语言3.8测试版相对于3.7正式版的改动部分: 1、支持完全的面向对象编程,可以在程序中定义并使用对象。 2、编写DLL时其中的公开子程序可以接受文本数据类型参数,且可以返回文本和字节集型数据。 3、支持源程序代码的收缩和展开(操作方法:选中程序块后单击右键选“收缩”菜单项,在子程序头上可以直接左键单击子程序名左边的减号)。 附,易语言面向对象开发特性简要说明: 1、易语言支持类的构造、析构、继承、虚拟方法、多态、封装特性。 2、对象的构造: 构造顺序为:先构造基类对象,再构造其继承类对象,如果类中具有对象成员,则先于其所处对象构造。 3、对象的析构: 析构顺序为:先析构继承类对象,再析构基类对象,如果类中具有对象成员,则在其所处对象后析构。 4、继承: 任何类均可以指定另外一类作为其基类,继承层数不限。 5、虚拟方法: 在基类中的方法可以被其继承类中的同名方法覆盖,当调用此方法时,系统自动根据所调用的对象 实体去调用对应的方法。 6、多态性: 可以将一个继承类对象赋予到其基类数据类型变量中,此时对此基类对象变量进行操作,将反映出继承类对象的特性。 7、类的封装: A、类的所有成员数据变量只能由该类本身的方法代码所访问,属于私有性质。 B、在继承类中可以以“类名.方法名”的方式指定访问基础类中的方法。 C、只有标记为“公开”的方法才能在类代码外部通过该类的对象实体来访问。 -------------------------------------------------------------------------------- 易语言3.7正式版相对于3.7测试版的改动部分: 1、编辑环境可以打开未安装对应支持库的易语言源程序。 2、“内码转换”支持GBK与日文内码SJIS之间的转换。 3、核心支持库中的“对象”数据类型增加了“取接口”方法。 4、“到字节集”、“到文本”命令被增强。 5、“数值到人民币”改名为“数值到金额”。 6、“取系统语言”命令支持linux,并增加日文类别。 7、“取操作系统类别”命令支持linux。 8、所有COM封装对象的“取子对象”方法更改为“取接口”,并增加一参数以取出指定接口。 9、改进后的packcom工具,用3.7测试版中的packcom生成的npk请使用本版本中的packcom打开后保存,以进行转换。 10、对测试过程中发现的所有问题都已经纠正。 -------------------------------------------------------------------------------- 易语言3.7测试版 相对于 3.6 正式版的新增功能: 1、对微软COM技术的全面支持,包括ActiveX组件、OLE自动机、COM类型库等等,详细说明请见ESDN帮助 2、跨平台的网络通讯支持库 3、跨平台的Mysql数据库支持库,且功能全面加强 4、跨平台的多线程支持库 5、EXCEL2000支持库(直接操作Excel) 6、WORD2000支持库(直接操作Word) 7、PowerPoint2000支持库(直接操作PowerPoint) 8、数据图表支持库(柱形图,饼形图、曲线图) 9、脚本语言支持库(可以运行VB script Jave script等脚本) 10、文本语音支持库(提供对文本转语音输出以及语音识别的支持) 11、易语言支持库在运行时支持动态加载 12、枚举常量的支持(详细说明见ESDN帮助) 13、更新了setup安装程序(即菜单"编译生成安装软件"的功能改进,解决了反安装时删除全部目录的问题,添加额外文件时增加了批量添加,还有更多安装功能的增强!) 14、部分功能的加强(如:树型框可以高速批量加入项目、标准输入命令支持密码输入、启动多线程支持参数等等) 15、其他很多地方改进。 -------------------------------------------------------------------------------- 易语言 3.6 公司成立纪念版 相对于 3.5 正式版的新增功能: 1、增加了对Linux平台的支持,可以用易语言在Windows环境下编写Linux控制台程序 2、增加了Windows动态链接库(DLL)的编写,用易语言能编写出DLL供自己以及其他编程语言(VB,VC,Delphi等)调用。 3、增加了控制台操作的2个命令“标准输出”、“标准输入”, 4、增加了3个命令:“指针到文本”(文本操作),“指针到字节集”(字节集操作)、“写到内存”(其他),最佳使用场合在易语言回调子程序和易语言DLL公开子程序中用作对外输出数据。 5、增加了图形图像支持库 - 格式1.0版,支持多种图片格式的转换。 6、增加了XP风格界面库1.1版,支持部分控件的4种风格类型的转换。 7、增加了文件压缩/解压缩支持库1.0版,支持.zip格式的压缩解压,同时用本库压缩的.zip文件也可以被其他压缩软件使用 8、增加了多线程支持库1.1版,供对多线程的支持,并通过实现进入许可证机制以避免多线程冲突。 9、增加了数据库操作支持库1.0版,本支持库用来访问各种类型数据库。 10、增加了MySql支持库1.1版,本支持库实现对MySql的支持。 11、扩展界面支持库二1.1版中增加了“IP编辑框”窗口组件,支持对IP地址的输入和编辑。 12、修改了易模块的接口结构,在支持原有结构的基础上,增加了新的接口创建方式。 13、开发环境增加了即时输入提示。 14、全面增补帮助文档(esdn.chm),增订图片及例程。 15、其他很多地方改进。 以上新增功能详细情况请看易语言新版esdn帮助文档(esdn.chm),均有详细说明及例程。 -------------------------------------------------------------------------------- 易语言 3.5 正式版 相对于 3.39 版的新增功能: 1、增加了扩展界面支持库二,包含超级按钮、高级影像框、分隔条、 超级编辑框等窗口单元,包含图片组处理、文档格式转换等分类命令。 2、增加了端口访问支持库,以支持对计算机端口的直接访问。 3、图片组支持真彩且制作工具性能提升。 4、表格拖动选择闪烁的问题已经解决。 5、系统配置中可以设置不显示程序备注。 6、数据源支持设置基于单元格的只读属性。 7、组合框和列表框的数据绑定实现方式改变。 8、其他很多地方改进。 -------------------------------------------------------------------------------- 易语言 3.39 正式版相对 3.38 版的新增功能: 1、可以读取繁体版易语言编写的程序。 2、增加了 cncnv 内码转换支持库。 3、增加了树型框的事件和方法。 4、改进了打印预览。 5、运行时树型框的“项目”属性可以读出当前项目数据。 6、可以在“程序设置”对话框中设置程序版本号。 7、改正了读取SQL SERVER数据库出现的问题。 8、改正了xp下托盘图标弹出菜单单击桌面不消失的问题。 -------------------------------------------------------------------------------- 易语言 3.38 正式版相对 3.36 版的新增功能: 1、支持加密狗。 2、操作系统界面功能支持库中增加了“关闭系统”命令,支持重启、关机、注销、休眠、冬眠。 3、改进了扩展界面支持库中的透明标签单元。 4、其他改进。 -------------------------------------------------------------------------------- 易语言 3.36 正式版相对 3.3 版的新增功能: 1、开发环境支持源代码打印。 2、开发环境窗口单元箱增加了滚动按钮。 3、改进了安装卸载子系统。 4、改进了端口组件,添加了方法和属性。 5、改进了“操作系统界面功能支持库”中的“创建快捷方式”命令。 6、改进了OCX支持。 -------------------------------------------------------------------------------- 易语言 3.3 正式版相对 3.2 版的新增功能: 1、新增了“操作系统界面功能支持库”,支持Windows外壳功能。 2、试用限次在各版本之间不再累加。 3、支持数据库加密。系统核心支持库数据库类别中增加了“是否已加密”、 “置数据库密码”、“密码输入框”、“复制密码”命令。“打开”命令 的数据库密码参数已经启用,改进了数据库管理器和易之表以支持加密 数据库; 4、数据操作支持库一中增加了对RSA数字签名和验证的支持(提供了“数字 签名钥匙测试.e”例程),并增加了对RC4加密算法的支持; 5、系统核心支持库中的“文件读写”类别中增加了“打开加密文件”命令, 用作保存加密文件数据,并提供了“加解密工具.e”例程; 6、改进了安装程序的卸载功能。 -------------------------------------------------------------------------------- 易语言 3.2 正式版相对 3.1 版的新增功能: 1、增加了对OCX组件(即ActiveX组件)的支持。 易语言 3.1 正式版相对 3.0 版的新增功能: 1、支持独立编译,独立编译后的易语言程序可以脱离易语言系统单独运行。 易语言3.0 正式版相对测试五版的新增功能: 1、增加电子注册支持。 易语言3.0 测试五版本相对于测试版三新增功能: 1、“系统处理”命令类别中加入了对配置文件进行操作及取操作系统类别的命令。 2、改进了调试过程中查改容器的功能(移到了工具条上)。 3、完成了安装制作工具的开发,具体请见系统setup目录中的readme.txt文件说明。 只是由于目前编译功能尚未开放,所以暂时不能被使用。 易语言3.0 测试三版本相对于测试版二新增功能: 1、加入了程序调试支持系统。 易语言3.0 Beta版本相对于2.51版本新增加的功能和需要注意点: 一、新增功能: 建立了完全的易程序编译器系统,支持全编译,可以直接将程序编译为CPU指令码 运行,从而突破了长期以来的速度瓶颈。 二、新增特性: 1、子程序指针值为该子程序的内存代码地址,可以直接传递给DLL命令用作回调。 2、只有被使用到的代码和数据才会被编译到可执行文件中。 3、如果需要屏蔽子程序中的某段程序使之不会被编译输出,直接使用类似: “判断循环首(假)”或 “如果真(假)”括住该语句块即可。 4、程序配置中允许设置任

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧