2009/04/19 | myDll之myFll,增强你的VFP[New]
类别(数据库学习笔记) | 评论(1) | 阅读(1633) | 发表于 23:59

函数库说明:myFll是增强VFP的扩展函数库,部分与RMH的myDll中功能相同(名称可能不同)的函数,是由RMH提供的myDll源码改进而来。一些和Win32API名称相同的函数,是在FLL中对Win32API的封装,在VFP中可以直接调用,并可以省略掉一些默认的参数。一些与算法相关的函数,都取自网上开源的代码,帮助中均有注明。

线程函数:部分函数以大写X结尾的函数,均是多线程函数,一般提供多线程的函数都会提供一个单线程的版本。由于线程间通信比较麻烦,均以消息传递的方式通信,因此线程函数需要VFP9以上版本支持(消息绑定)。

版权问题:myFll可以自由使用,任意改名及加壳(发布的这个版本里没有加壳,不过你可以使用upx、aspack之类的加壳),以及自由转发,转发时应注意与帮助文件同时转发。myFll作者不承担可能由于技术原因给你带来的错误或损失。发现错误可以与作者取得联系共同改进。

包含进EXE编译:理论上,FLL文件是可以直接包含进VFP编译的exe文件,此版本的FLL也没有做任何限制。但是,部分函数未经过全面测试,涉及多线程、系统勾子的函数,

使用帮助:myFll发布附带有中文CHM格式帮助,使用示例及参数说明,请查阅帮助。开发环境中可以按如下方式取得部分帮助信息:

取得此版本函数个数:FllHelp()
取得第x个函数的信息:?FllHelp(x)
显示提示信息:?FllHelp(x,.T.)
显示指定函数的信息:FllHelp("SendMessage",.T.)

智能感应器

第一次打开myfll,(VFP命令 set library to myfll),会向你的智能感应库中添加所有的函数原型,由于VFP6不支持智能感应,在VFP7以上系统中,可以有如下效果:


此主题相关图片如下:
按此在新窗口浏览图片

函数列表(133):

硬件相关函数:

GetDiskSerial        读取指定硬盘的序列号
GetCpuId           读取CPU的序列号
GetMAC            读取网卡的MAC地址
GetVolumeNumber       读取指写磁盘的卷标
IsDiskInDrive        检查指定磁盘是否就绪
GetPort           读取系统的串口、并口
ComOpen           打开串口
ComWrite           向串口输出信息
ComRead           从串口读取信息
ComClose           关闭串口
加密解密函数:

MD5File           计算一个文件的MD5效验和
MD5String          计算一个字符串的MD5效验和
CRC32File          计算一个文件的CRC32效验和
CRC32String         计算一个字符串的CRC32效验和
des             采用DES算法加密或解密一个字符串,长度为8位
des16            采用DES算法加密或解密一个字符串,长度为16位
des24            采用DES算法加密或解密一个字符串,长度为24位
EnDeString          双向加密解密字符串的函数
Encrypt           双向加密解密字符串
RSACalc           RSA计算函数
RSAGen            生成随机RSA密钥函数
RSACmp            比较两个十六进制值是否相等
压缩解压函数:

Zip              压缩文件
UnZip             解压文件
ZipInfo            测试一个文件是否在压缩文件中存在
ZipFileToStr         测试一个文件是否在压缩文件中存在
CompressString        压缩一个字符串
DeCompressString       解压字符串
数据库:

SQLCallBack         SQL回调函数载入
SQLCallReset         SQL回调函数卸载
PackMDB           压缩修复Access数据库
网络相关函数:

DownFile           从internet上下载文件到本地
DownFileX           线程方式从网上下载一个文件
HttpGetFileSize       读取internet上的文件大小
HttpPostData         向http服务器Post数据
HttpOpen           打开一个Internet句柄
HttpAddParms         为Http句柄添加一个参数
HttpSend           发送Http句柄中的Post数据
HttpClose           关闭Http句柄
FtpDownFile          从FTP服务器下载文件
FtpUploadFile         向FTP服务器上传文件
ShareAdd           在局域网共享文件夹
ShareDel           删除共享文件夹的共享
ShareMapDrive         映射网络驱动器
ShareDelDrive         删除映射的网络驱动器
GetLocalIP          读取本机IP
DomainToIP          转换域名为IP地址
DialUp            建立拨号连接
DialDown           断开拨号连接
GetSqlServer         列出所有网络上的SQL Server
IpToMAC            根据IP得到MAC地址

邮件函数:

SmtpCreate          创建一个SMTP发送邮件的句柄
SmtpNewMail          在内存中创建邮件内容,等待发送
SmtpSend           发送邮件
SmtpGetLastError       检测邮件最后的错误
SmtpClose           关闭句柄
打印相关函数:

PaperAdd           添加自定义纸张并返回ID
PaperDel           删除自定义纸张
PaperInfo           读取所有纸张信息或指定纸张信息
GetDefaultPrinter       取得默认打印机的名称
SetDefaultPrinter       设置默认打印机
常用转换函数:

ToPY             生成指写字符串的拼音首字
NToC             数字转人民币大写
hzbh             计算指定字符串的汉字笔划
StringToDword         将高底位存放的字符串,转换为字符型
DwordToString         将整型数值转换为字符型数值
NumConver           进制转换函数,能够将一个数字转换为2至36进制的字符串

ConverNum           将指定进制的字符串转换为数值型
GB2312ToBIG5         简体转繁体
BIG5ToGB2312         繁体转简体
FormToBmp           将表单保存为BMP图片
RectToBmp           指定屏幕区域保存为bmp图片
注册表读写函数:

regRead            读取注册表中的设置
regWrite           向注册表中写入设置
regDelKey           删除注册表中的分支
regDelValue          删除注册表中的设置
ini文件读写函数:

iniRead            从ini文件中读取设置
iniWrite           向ini文件中写入一个设置
iniSet            设置默认的数据段和ini文件
iniSetSection         设置默认的数据段
iniSetFileName        设置默认的ini文件
系统托盘

SysTrayAdd          向系统托盘添加一个图标
SysTrayEdit          修改系统托盘的图标
SysTrayDel          删除系统托盘中的图标
HotKeyAdd           向系统注册一个热键
HotKeyDel           删除向系统注册的热键
文件操作

CopyFiles           复制文件
MoveFiles           移动文件
DeleteFiles          删除文件
CreateShortcut        创建快捷方式
GetIcon            释放exe或dll中的图标
其它:

SetDateTime          设置Windows系统时间
ChangEres           更改屏幕的分辨率
idleLoad           开始加载空闲检测
idleSeconds          读取系统空闲时间
idleUnload          卸载空闲检测
KillApp            终止指定进程
KillAllApp          终止所有进程,但排除指定标题的进程
FindAllFile          查找指定文件夹下的所有文件
IsNum             检测函数是否是数字
CheckProcess         检测主程序是否重复运行
ProcLoad            载入一个VFP函数,取得函数地址
ProcUnload          卸载函数
MemRead           读取指定地址的内存
MemWrite           写入指写内存
PushError          系统错误处理压栈
PopError           系统错误处理出栈
Format            格式化输出字符串(类C语言)
CreateLink          创建文件关联
封装过的Win32 API函数:

FindWindow          查找指定窗口的句柄
SendMessage          向指写窗口发送指定消息
PostMessage          将消息投递到指定句柄的消息队列
ShowWindow          显示指定窗口
ShowWindowAsync        显示指定窗口
SetWindowLong         设置窗口的扩展样式
SetLayeredWindowAttributes  设置窗口效果
SetForegroundWindow      激活指定窗口使这成为最前面的窗口
ShellExecute         调用系统关联,打开一个文件
ShellExecWait         调用一个程序,并等待执行结束
SuspendThread         暂停一个线程
ResumeThread         恢复一个线程
Beep             使电脑内喇叭发出beep声
ExitWindowsEx         退出Windows
Sleep             程序挂起nMilliseconds毫秒
ExitProcess          终止当前进程
GetLastError         返回最后的错误号码
SetParent           设置窗口的父窗口
UpdateWindow         更新窗口

使用帮助及下载

 下载信息
点击进入:myfll.rar 下载页


老版本中,CompressFile和DeCompressFile已被删除,不再做为myFll的一部分发布。推荐使用Zip、UnZip、ZipInfo替代。

此两个函数,被单独编译,并开放源码,点击这里下载:

 下载信息
点击进入: 下载页

0

评论Comments