VFP编程技巧 -电脑资料

时间:2017-04-01 04:43:17
染雾
分享
WORD下载 PDF下载 投诉

在VFP中如何历遍所有文件夹和文件

在VFP中,能象一些杀毒软件那样,找遍磁盘的所有文件夹和文件吗?

答案是肯定的,而且很简单:

*利用VFP的Create Cursor -SQL命令建立有5个字段的临时库

*结合前面提到的ADIR()函数便可完成,

VFP编程技巧

下面是具体代码:

dqml=''C:'' &&需扫描的盘符

use

Create Cursor mylsdbf (wjmc c(120),wjcd n(10),wjrq d,wjshj c(10),wjsx c(6))

xGS=1

xCD=0

append BLANK

REPL wjmc WITH dqml

do while !eof()

nRecn=Recn()

dqml=allt(wjmc)+''\''

x=adir(Mysz,(dqml+''*.*''),''rashd'')

if x<>0

for I=3 to x

Mysz(I,1)=dqml+Mysz(I,1)

xGS=xGS+1

xCD=xCD+Mysz(I,2)

endf

append from array Mysz for allt(wjmc)<>''.'' AND allt(wjmc)<>''..'' and ''D''$wjsx

endi

go nRecn

skip

endd

use

这里有以上例子的源代码实例下载

在VFP如何利用低级文件操作函数读取*.INI文件

VFP为我们提供了16个低级文件操作函数,充分利用这些函数,几乎可对所有文件进行本来只有汇编、C等语言才能进行的操作。

*.INI文件其实也是ASCII码文本文件,只不过有其特定的规律而已。

下面以读取system.INI中[boot.description]关键字里的mouse.drv标识符中的值为例来说明:

nPath_ls=fullpath(''command.com'',2)

nPath=strtran(nPath_ls,''COMMAND.COM'',''system\'')     &&取得Windows\system\的目录名

dkwjm=nPath+''system.ini''                  &&需打开文件的路径和文件名

Fp=Foren(dkwjm,0)                      &&以只读(默认方式0可以不用)打开文件

if Fp<0

wait wind ''打不开您指定的文件''

retu

endi

do while !Feof(Fp)

wjnr=Fgets(Fp)         &&从打开的文件中读取一行

if atc(''mouse.drv'',wjnr)=1

exit

endi

endd

=Fclose(Fp)              &&关闭打开的文件

x=atc(''='',wjnr)

nQdz=iif(x>1,suns(wjnr,x+1),'''')   &&nQdz=''标准鼠标''字符串

retu

我只不过是说明如何运用VFP提供的这些函数,至于如何建立和改写文件,为何用Fgets()来读取数据而不用Fread()来读取数据等,可以查阅VFP帮助,

电脑资料

《VFP编程技巧》()。VFP3.0的帮助是一本很好的中文教科书。

如何改变文件的最后修改日期和时间

在WINDOW 9X下我们没办法来改变一个文件的日期和时间,那在VFP能办到吗?

在WINDOW 9X下文件的日期和时间有创建、修改和访问三种,在通常情况下我们所说的文件日期和时间指的是修改这一项。

那在VFP下如何改文件日期和时间呢:

Fp=Foren(''需打开的文件'',2)          &&以读写方式打开文件

if Fp<0

wait wind ''打不开您指定的文件''

retu

endi

wjnr=Fread(fp,1)               &&从打开的文件头中读一个字节到wjnr

=Fseek(Fp,0,0)                &&将文件指针移到文件头(回到原来的位置)

=Fwrite(Fp,wjnr,1)              &&向打开的文件头中写入一个字节

=Fclose(Fp)         

        &&关闭打开的文件

即把读取的那个字节原封不动的再写入文件,从而达到了将当前系统

的日期和时间来改写文件的日期和时间目的。

如何在程序的开始检测权限和根据权限操作

在一个程序的开始部分,如何根据不同的口令字来区分不同的登权限,各自的

口令字和权限设置又如何加以保密,以防止非法查看和修改?

我们辛辛苦苦编制的程序又如何根据每台机器的硬件来加以判断用户的合法

与非法,以防止非法拷贝?

针对以上问题,我编制了一个简单的程序实例供有兴趣的朋友参考。

该实例并非十分完美,也很简单,意在提供一种思路,大家可根据自己的情

况,加以完善。

实例共有一个数据表和四个模块组成,分别是:

一、KLK.DAT

这是经过vfpjmdbf.vcx加密后的数据表,解密后的表结构如下:

========================================================

表文件名: KLK.DBF

数据记录数: 3

最近更新的时间: 10/17/1999

代码页: 936

字段 字段名 中文含义 类型  宽度 小数位 索引 排序

1  BH   编号  字符型  2

2  XM   姓名  字符型  8

3 PASSKL 口令字 字符型 12

4  QX   权限  数值型  1

5 VARJB 硬盘卷标 数值型 12

VFP编程技巧 -电脑资料

手机扫码分享

Top