首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

怎么锁住正在使用的文件

2012-01-10 
如何锁住正在使用的文件有一个文件,在我的程序不用的时候我想把它加密,用的时候再解密,同时在使用时要求其

如何锁住正在使用的文件
有一个文件,在我的程序不用的时候我想把它加密,用的时候再解密,同时在使用时要求其它所有文件都不能对它进行操作,比如:复制、删除、剪切等。
请高手指点!

[解决办法]
在windows中,文件可用共享模式打开——在这种情况下,多个进程可同时访问该文件。利用这个函数,要对文件进行读写的一个应用程序可将文件的某一部分锁定起来,使其不能由其他应用程序访问。这样便避免了同时读写时发生的冲突
Long,非零表示成功,零表示失败。会设置GetLastErrorhFile ---------- Long,欲锁定文件的句柄

dwFileOffsetLow - Long,指定欲锁定区域起始处的低32位地址

dwFileOffsetHigh - Long,指定欲锁定区域起始处的高32位地址

nNumberOfBytesToLockLow - Long,锁定区域包含字符数量的低32位值

nNumberOfBytesToLockHigh - Long,锁定区域包含字符数量的高32位值锁定的区域不能进行重叠操作。由不同的操作系统决定,可能要求先运行share.exe才能保证该函数正常工作
[解决办法]
Open 语句


能够对文件输入/输出 (I/O)。

语法

Open pathname For mode [Access access] [lock] As [#]filenumber [Len=reclength]

Open 语句的语法具有以下几个部分:

部分 描述
pathname 必要。字符串表达式,指定文件名,该文件名可能还包括目录、文件夹及驱动器。
mode 必要。关键字,指定文件方式,有 Append、Binary、Input、Output、或 Random 方式。如果未指定方式,则以 Random 访问方式打开文件。
access 可选。关键字,说明打开的文件可以进行的操作,有 Read、Write、或 Read Write 操作。
lock 可选。关键字,说明限定于其它进程打开的文件的操作,有 Shared、Lock Read、Lock Write、和 Lock Read Write 操作。
filenumber 必要。一个有效的文件号,范围在 1 到 511 之间。使用 FreeFile 函数可得到下一个可用的文件号。
reclength 可选。小于或等于 32,767(字节)的一个数。对于用随机访问方式打开的文件,该值就是记录长度。对于顺序文件,该值就是缓冲字符数。


下列代码以只允许读的二进制方式打开文件;其他过程不可以读该文件。

Open "TESTFILE " For Binary Access Read Lock Read As #1


[解决办法]
先用VB做一个工具,将这个文件锁住。你应该知道密码。所以当你打开时他会提示要密码。一般情况下,无论你在哪个计算机上都打不开。
然后你在你的程序里边使用时,你把密码传给他就可以了。我以前做过。
[解决办法]
二楼就给出答案了 怎么没人去试?

热点排行