小说迷-最新更新-蜗牛程序-蜗牛程序最新章节目录-第一卷 第一章
加入书签 | 推荐本书 | 返回书页 | 加入收藏

第一卷 第一章


    蜗牛程序

蜗牛中如何调用DOS并得到返回文本

源程序如下:

子程序:_启动子程序

返回值类型:整数型

备注:本子程序在程序启动后最先执行

d  =  读环境变量  (“CSp”)

子程序:执行ds命令行

返回值类型:文本型

参数:参数    数据类型:文本型

局部容器:文件长度

局部容器:文件号

局部容器:句柄

句柄  =  执行  (主窗口取窗口句柄  ()

“pn”

d

“  /  ”  +  参数  +  “>”  +  临时文件名

当前目录

0)

延时  (1000)

如果真  (句柄  =  0)

返回  (转换为字节集  (“执行命令行失败!”))

如果真结束

文件号  =  开文件  (临时文件名

#读入

)

文件长度  =  取文件长度  (文件号)

延时  (250)

判断循环首  (文件长度  ≠  取文件长度  (文件号))

备注:等待命令行运行完毕

文件长度  =  取文件长度  (文件号)

延时  (250)

判断循环尾  ()

返回信息  =  读入文本  (文件号

)

关闭文件  (文件号)

写到文件  (临时文件名

{;    };)

备注:清除文件内容

返回  (返回信息)

本来有更好的方法调用DOS的,那就是匿名管道技术。但因为易语言在自定义数据类型和DLL的一些限制,没有办法实现。

现在或者方法只是将DOS命令输出到文本,然后再读取来取回命令的返回信息。

这样有两个缺点:

1命令行中不能够再有“”字符

2不能够得到错误信息的输出

蜗牛中寻找窗口子程序

子程序:寻找窗口

返回值类型:文本型

局部容器:窗口标题            数据类型:文本型

局部容器:窗口句柄            数据类型:整数型

局部容器:标题长    数据类型:整数型

返回信息  =  “窗口句柄                    窗口标题”  +  换行符  +  “===========================================================”  +  换行符

窗口句柄  =  取窗口句柄  (GtDstpWndw  ()

5)

判断循环首  (窗口句柄  ≠  0)

标题长  =  GtWndwTxtLngth  (窗口句柄)

如果  (标题长  ≤  0)

窗口标题  =  “”

否则

窗口标题  =  取空白文本  (标题长)

标题长  =  GtWndwTxt  (窗口句柄

窗口标题

标题长  +  1)

如果结束

如果真  (窗口标题  ≠  “”  且  窗口标题  ≠  “DDE  Srvr  Wndw”  且  窗口标题  ≠  “Dalt  IME”  且  窗口标题  ≠  “OlManThradWndNa”  且  窗口标题  ≠  “Prgra  Managr”)

备注:过滤无标题窗口和一部分系统窗口

返回信息  =  返回信息  +  “    ”  +  到文本  (窗口句柄)  +  取重复文本  (10  -  取文本长度  (到文本  (窗口句柄))

“-”)  +  窗口标题  +  换行符

如果真结束

窗口句柄  =  取窗口句柄  (窗口句柄

2)

判断循环尾  ()

返回  (返回信息  +  “===========================================================”  +  换行符)

蜗牛中用到的进制转换程序

包括从十进制到其他进制和从其他进制到十进制

子程序:十转其他

返回值类型:文本型

参数:需转换数值    数据类型:长整数型

参数:进制

局部容器:余数        数据类型:长整数型

局部容器:循环容器

局部容器:返回容器            数据类型:文本型

循环判断首  ()

余数  =  需转换数值  %  进制

如果  (余数  <  10)

返回容器  =  到文本  (余数)  +  返回容器

否则

返回容器  =  字符  (55  +  余数)  +  返回容器

如果结束

需转换数值  =  需转换数值  \  进制

循环判断尾  (需转换数值  ≠  0)

返回  (返回容器)

------------------------------

子程序:其他转十

返回值类型:长整数型

参数:文本    数据类型:文本型

参数:进制

局部容器:字符        数据类型:文本型

局部容器:返回容器            数据类型:长整数型

局部容器:循环容器

计次循环首  (取文本长度  (文本)

循环容器)

字符  =  到大写  (取文本中间  (文本

循环容器

1))

如果  (取代码  (字符

)  <  58)

返回容器  =  返回容器  +  文本到数值  (字符)  ×  求次方  (进制

取文本长度  (文本)  -  循环容器)

否则

返回容器  =  返回容器  +  (取代码  (字符

)  -  55)  ×  求次方  (进制

取文本长度  (文本)  -  循环容器)

如果结束

计次循环尾  ()

返回  (返回容器)
如果你在阅读得很入味的时候,又正好有事离开,那请进行以下操作.