注册 登录
编程论坛 VFP论坛

木瓜的“Myfll”2023.01.08 V2.231.22.904

kangss 发布于 2023-01-11 14:51, 3758 次点击
单独发帖,让更多的人看到
之前流传的“汉字2拼音PRG”算法,在XP、win7、win10下转换,有不少拼音首字母不同,甚至错误很多。
新版 Myfll 修正:因 win10 汉字内码有变导致 ToPy() 转换不准确。更新后的 ToPy():支持xp、win7、win10等win全系列,转换准确、速度快
只有本站会员才能查看附件,请 登录
24 回复
#2
sdta2023-01-11 14:57
谢谢楼主
怎么没有使用说明啊
#3
kangss2023-01-11 15:10
回复 2楼 sdta
疏忽了,想着大家用 Myfll 都好多年了

只有本站会员才能查看附件,请 登录



帮助说明中有例子

[此贴子已经被作者于2023-1-11 15:12编辑过]

#4
kangss2023-01-11 15:11
作者:木瓜 ljyit@

函数列表:

硬件相关函数:

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

MD5File           计算一个文件的MD5效验和
MD5String          计算一个字符串的MD5效验和
CRC32File          计算一个文件的CRC32效验和
CRC32String         计算一个字符串的CRC32效验和
Sha1File           计算一个文件的sha1效验和
Sha1String          计算一个字符串的sha1效验和
des             采用DES算法加密或解密一个字符串,长度为8位
des16            采用DES算法加密或解密一个字符串,长度为16位
des24            采用DES算法加密或解密一个字符串,长度为24位
EnDeString          双向加密解密字符串的函数
Encrypt           双向加密解密字符串
RSACalc           RSA计算函数
RSAGen            生成随机RSA密钥函数
RSACmp            比较两个十六进制值是否相等
URLEncode          URL编码
URLDecode          URL解码
JSEscape           javaScript escape编码算法,接收ANSI字符串,输出编码后的字符
JSUnEscape          对escape编码过的字符中进行解码
QPEncode           Quoted-Printable QP编码
QPDecode           Quoted-Printable QP解码
SM3              国产SM3签名算法
压缩解压函数:

Zip             压缩文件
UnZip            解压文件
UnZipFile          解压单个文件          
ZipInfo           测试一个文件是否在压缩文件中存在
ZipFileToStr         将压缩文件中的文件解压到变量
ZipAFile           将zip文件中的文件信息生成的数组
CompressString        压缩一个字符串
DeCompressString       解压字符串
GZCompress          GZ压缩,支持 RAW ZLIB 和GZIP
GZDeCompress         GZ解压字符串
数据库:

VarToStr           将变量合并成字符串
StrToVar           将字符串还原成变量
CursorToStr         将Cursor生成变量
ChangesToStr         将Cursor的变动情况生成变量        
StrToCursor         将变量还原为Cursor
AppendFromStr        将变量中的表追加到指定表中
ACursorList         将变量中的表信息生成数组
ACursorFields        将变量中的指定表的字段信息生成数组
CRC32Record         计算一条记录的CRC32值
SQLCallBack         SQL回调函数载入
SQLCallReset         SQL回调函数卸载
PackMDB           压缩修复Access数据库
ReadMemo           读取vfp中大于16M的备注字段
网络相关函数:

DownFile           从internet上下载文件到本地
DownFileX           线程方式从网上下载一个文件
HttpGetFileSize       读取internet上的文件大小
HttpPostData         向http服务器Post数据
HttpOpen           打开一个Internet句柄
HttpAddParms         为Http句柄添加一个参数
HttpSend           发送Http句柄中的Post数据
HttpClose          关闭Http句柄
FtpDownFile          从FTP服务器下载文件
FtpUploadFile        向FTP服务器上传文件
FtpConnect          连接FTP服务器
FtpDisconnect        断开FTP服务器连接
FtpAFile           枚举Ftp中的所有文件
FtpCreateDir         在FTP服务器上创建一个文件夹        
FtpSetCurrentDir       设置当前的文件夹
FtpDeleteDir         删除FTP服务器上的文件夹
FtpDelFile          删除FTP服务器上的文件
FtpRename          重命名FTP服务器上的文件
FtpFOpen           打开FTP服务器上的文件
FtpFClose          关闭FTP服务器上的文件
FtpFRead           读取FTP服务器上的文件
FtpFWrite          写入FTP服务器上的文件
FtpSetPasv          设置FTP被动工作模式
ShareAdd           在局域网共享文件夹
ShareDel           删除共享文件夹的共享
ShareMapDrive         映射网络驱动器
ShareDelDrive         删除映射的网络驱动器
GetLocalIP          读取本机IP
DomainToIP          转换域名为IP地址
DialUp            建立拨号连接
DialDown           断开拨号连接
GetSqlServer         列出所有网络上的SQL Server
IpToMAC           根据IP得到MAC地址

邮件函数:

SmtpCreate          创建一个SMTP发送邮件的句柄
SmtpNewMail         在内存中创建邮件内容,等待发送
SmtpSend           发送邮件
SmtpGetLastError       检测邮件最后的错误
SmtpClose          关闭SMTP句柄
Pop3Create          创建一个POP3接收邮件的句柄
Pop3Close          关闭句柄
Pop3AMailList        枚举POP3服务器上的邮件数量
Pop3DeleteMail        删除POP3邮件服务器上的邮件
Pop3GetMail         下载一封邮件
Pop3GetMailHeader      下载邮件头
打印相关函数:

PaperAdd           添加自定义纸张并返回ID
PaperDel           删除自定义纸张
PaperInfo          读取所有纸张信息或指定纸张信息
APaper            枚举所有纸张生成数组
GetDefaultPrinter      取得默认打印机的名称
SetDefaultPrinter      设置默认打印机
PrinterOpen         启用一个打印任务
PrinterOutPage        打印页对像
PrinterClose         结束打印
PrintStringDirect      直接将一个字符串输了到打印机
SetPrintJobName       修改打印任务的名字
转换及字符串相关函数:

ToPY             生成指写字符串的拼音首字
hzbh             计算指定字符串的汉字笔划
StringToDword        将高底位存放的字符串,转换为字符型
DwordToString        将整型数值转换为字符型数值
NumConver          进制转换函数,能够将一个数字转换为2至36进制的字符串
ConverNum           将指定进制的字符串转换为数值型
FormToBmp          将表单保存为BMP图片
RectToBmp           指定屏幕区域保存为bmp图片
GB2312ToBIG5         简体转繁体
BIG5ToGB2312         繁体转简体
StrReverse          反转一个字符串
ImageConver         转换图片格式
Thumbnail          缩放图片
ImageGray          灰度化一个图片
FTrim            删除字符串中除指定字符以外的字符
EMonth            返回英文月份名
TToS             将时间型转为YYYYMMDDHHMMSS格式
StoT             将字符串转为时间型,YYYYMMDDHHMMSS格式的字符串转为时间型
TToN             将VFP的时间转换成纯数字,等同于unix时间戳
NToT             将数字unix时间转换成VFP的时间类型
SToD             将日期字符串YYYYMMDD转为日期型
DToN             将VFP的日期型(D)转换成unix数字日期
NToD             将数字unix时间转换成VFP的日期类型
NToC             数字转人民币大写
StrApproach         计算两个字符串str1相对于str2的相似度
GetDecNum          获取数字的小数位数
QRImage           生成一个可用于报表打印的二维码图片对像
QREncode           生成一个二维码图片字符串
注册表读写函数:

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

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

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

CopyFiles          复制文件
MoveFiles          移动文件
DeleteFiles         删除文件
CreateShortcut        创建快捷方式
GetIcon           释放exe或dll中的图标
SetFileTime         修改文件的修改时间
GetFileEx          选择多个文件
服务程序

ServiceCreate        创建一个windows服务
ServiceDelete        删除一个windows服务
ServiceRun          启动、停止、暂停、恢复一个服务
ServiceStatus        查询服务状态
ServiceHook         绑定服务消息控制
ServiceTell         响应服务控制器
RegisterLogMessage      注册Windows日志事件源
WriteLog           向windows事件中写入应用程序日志
CommMemCreate        创建一段共享内存
CommMemRead         向共享内内存中写入数据
CommMemWrite         从共享内在了中读取数据
CommMemDelete        删除共享内存
其它:

SetVFPEvents         设置MYFLL内部函数回调功能
SetDateTime         设置Windows系统时间
ChangEres          更改屏幕的分辨率
idleLoad           开始加载空闲检测
idleSeconds         读取系统空闲时间
idleUnload          卸载空闲检测
KillApp           终止指定进程
KillAllApp          终止所有进程,但排除指定标题的进程
KillProcessByName      根据程序文件名杀死一个进程
FindAllFile         查找指定文件夹下的所有文件
IsNum            检测函数是否是数字
CheckProcess         检测主程序是否重复运行
ProcLoad            载入一个VFP函数,取得函数地址
ProcUnload          卸载函数
MemRead           读取指定地址的内存
MemWrite           写入指写内存
PushError          系统错误处理压栈
PopError           系统错误处理出栈
Format            格式化输出字符串(类C语言)
CreateLink          创建文件关联
DesktopHide         隐藏桌面
SystemKeySet         禁用系统键
RegisterFile         注册文件名解除文件注册
ShowBalloon         显示一个气泡提示窗口
RunAs            以不同的系统账号密码运行指定程序
FixVFPBug          修复vfp的一些bug
CmdShell          执行一个命令获取返回结果
Amonitor          获取多个显示器信息
封装过的Win32 API函数:

FindWindow          查找指定窗口的句柄
SendMessage         向指写窗口发送指定消息
PostMessage         将消息投递到指定句柄的消息队列
ShowWindow          显示指定窗口
ShowWindowAsync       显示指定窗口
SetWindowLong        设置窗口的扩展样式
SetLayeredWindowAttributes  设置窗口效果
SetForegroundWindow     激活指定窗口使这成为最前面的窗口
ShellExecute         调用系统关联,打开一个文件
ShellExecWait        调用一个程序,并等待执行结束
SuspendThread        暂停一个线程
ResumeThread         恢复一个线程
Beep             使电脑内喇叭发出beep声
ExitWindowsEx        退出Windows
Sleep            程序挂起nMilliseconds毫秒
ExitProcess         终止当前进程
GetLastError         返回最后的错误号码
SetParent          设置窗口的父窗口
UpdateWindow         更新窗口
#5
cssnet2023-01-11 15:46
我一般选择自己编译自己的C算法库来自用。
原因是,不同版本Visual C/C++编译出来的DLL,有的在XP下调用会出错,有的则无法在Win10/11下正常调用,感觉上好乱。
Visual Studio似乎只要一升级,没准儿就可能出问题。
甚至出大问题!
故而,FLL再好,我一般不太敢用第三方编译的。
自己的DLL,自己测试,自己用——省心更放心。

#6
吹水佬2023-01-11 17:32
以下是引用cssnet在2023-1-11 15:46:30的发言:

我一般选择自己编译自己的C算法库来自用。
原因是,不同版本Visual C/C++编译出来的DLL,有的在XP下调用会出错,有的则无法在Win10/11下正常调用,感觉上好乱。
Visual Studio似乎只要一升级,没准儿就可能出问题。
甚至出大问题!
故而,FLL再好,我一般不太敢用第三方编译的。
自己的DLL,自己测试,自己用——省心更放心。

也“造轮子”了。觉睡觉醒,觉醒觉睡。30年河东,30年河西。

[此贴子已经被作者于2023-1-11 17:45编辑过]

#7
cssnet2023-01-11 18:18
以下是引用吹水佬在2023-1-11 17:32:40的发言:
也“造轮子”了。觉睡觉醒,觉醒觉睡。30年河东,30年河西。


其实不是刻意“造轮子”。
比方说,有些Unicode字符处理函数、UTF-8字符处理函数,网上随处皆可以Copy到现成的C代码,我可没理由那么憨居,那么辛勤,逐行逐行去转译成VFP代码——无论笨小孩,或聪明的小孩,总会一股脑用VC打包成一个DLL,必要时,还可以从vfp2c32官方发布的源代码中,抽取一些有用函数到自己囊中,丰富一下函数库……这样东拼西凑成了一个自用的DLL,安全好使;最主要是,自己可随时根据需要,随时增删函数,完全可调可控可以信赖。
呵呵。
#8
吹水佬2023-01-11 18:42
以下是引用cssnet在2023-1-11 18:18:43的发言:



其实不是刻意“造轮子”。
比方说,有些Unicode字符处理函数、UTF-8字符处理函数,网上随处皆可以Copy到现成的C代码,我可没理由那么憨居,那么辛勤,逐行逐行去转译成VFP代码——无论笨小孩,或聪明的小孩,总会一股脑用VC打包成一个DLL,必要时,还可以从vfp2c32官方发布的源代码中,抽取一些有用函数到自己囊中,丰富一下函数库……这样东拼西凑成了一个自用的DLL,安全好使;最主要是,自己可随时根据需要,随时增删函数,完全可调可控可以信赖。
呵呵。

组装也是的制造的过程,谁写的代码还不是从一开始学就一点一点地拼出来的。
#9
nbwww2023-01-11 18:43
回复 7楼 cssnet
独乐乐不如众乐乐
#10
pvm20002023-01-11 20:15
木瓜写的MyFll,功能很全。
感谢木瓜的无私分享。
实在没办法要造轮子,才用C/C++写点代码编译成FLL。
#11
sam_jiang2023-01-12 00:34
回复 3楼 kangss
为什么我下载的帮助是空白,没有内容?
#12
asis2023-01-12 08:58
回复sam_jiang:
在帮助文件点右键属性,解除锁定后即可显示帮助内容
#13
shizi02023-01-12 08:58
主文件大小翻了一倍,帮助文件还是老版本,能不能提供一下新版说明?至少发现ProcLoad()完全不对了
#14
shizi02023-01-12 09:22
本版FllHelp():249
V2.228(21年)FllHelp():402
#15
aqyejun2023-01-16 17:24
有用留存
#16
星光闪闪5132023-02-11 19:24
#17
ljb88642023-07-26 08:20
回复 3楼 kangss
这个帮助文件打开后,提示“ 已取消到该网页的导航 ”
#18
hu9jj2023-07-26 08:33
木瓜大侠坚持VFP已经几十年了,赞!
#19
pjtyzyq2023-07-26 10:46
帮助文件是空的?
只有本站会员才能查看附件,请 登录
#20
sostemp2023-07-26 15:04
quote]以下是引用pjtyzyq在2023-7-26 10:46:45的发言:

帮助文件是空的?
[/quote]

文件右键---解锁下即可。
#21
pjtyzyq2023-07-26 15:57
回复 20楼 sostemp
OK了,谢谢!
#22
fskenny2023-08-27 17:03
下载收藏,以备不时之需。
#23
laowan0012023-08-28 09:11
一提到木瓜大师,不由得拱手表示感谢,如果没有木瓜的myfll,不知我的程序会是肿么个样子
感谢木瓜大师
#24
aqyejun2023-08-28 10:30
感谢木瓜的无私分享。
#25
mymqkmyy2023-09-09 22:30
支持,谢谢
1