VisFileCopy 不适用于大文件

问题描述 投票:0回答:1

我在 Centura 3.0 团队开发人员工作,我想复制大文件

VisFileCopy
不适用于大文件。

不幸的是,我无法找到与最大允许数据大小或返回错误描述相关的任何文档。

我做了一些测试,发现它可以正常处理 5.25 GB 的文件,我想复制 11 GB 的文件

File Size        State
5.25 GB          Copied
5.62 GB          Not Copied and retrieve Error (-39)

是否有与

VisFileCopy
等效的功能可以顺利处理大文件?

large-files guptateamdeveloper centura
1个回答
1
投票

使用 SHELL32.DLL 中的 Win32API 函数 SHFileOperation。

1)在外部函数中声明 SHFileOperation:(如果尚未声明)

2)声明SHFileOperation使用的一些常量:

3)声明您自己的包装器(以替换 VisFileCopy )作为内部函数:

4)使用您想要的任何参数调用包装函数(例如包含/排除进度条)



或者,这里是工作版本,您可以下载并在 v3.0 中打开。我在 v6.2 中测试过它,效果很好。如果您无法打开下载(因为 v3 太旧),我将发布一个备用图像,您只需从头开始输入即可。但相信我,它确实有效。
转到: SQLWindows 高级文件操作:复制、移动、重命名和删除


© www.soinside.com 2019 - 2024. All rights reserved.