MoveFileEx

编辑:自然网互动百科 时间:2020-01-28 01:58:24
编辑 锁定
本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!
MoveFileEx是计算机语言中的一种函数。
中文名
MoveFileEx
外文名
MoveFileEx
返回值
Long,非零表示成功
说    明
移动文件

MoveFileExVB声明

编辑
Declare Function MoveFile& Lib "kernel32" Alias "MoveFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String)[1] 
Declare Function MoveFileEx& Lib "kernel32" Alias "MoveFileExA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal dwFlags As Long)

MoveFileEx说明

移动文件。如dwFlags设为零,则MoveFileEx完全等价于MoveFile

MoveFileEx返回值

Long,非零表示成功,零表示失败。会设置GetLastError

MoveFileEx参数表

参数 类型及说明
lpExistingFileName String,欲移动的文件名
lpNewFileName String,新文件名
dwFlags Long,一个或多个下述常数
MOVEFILE_REPLACE_EXISTING 如目标文件存在,则将其替换
MOVEFILE_COPY_ALLOWED 如移动到一个不同的卷,则复制文件并删除原来的文件
MOVEFILE_DELAY_UNTIL_REBOOT 移动操作在系统下次重新启动时正式进行。这样便可在WindowsNT中改换系统文件

MoveFileEx注解

这两个函数通常不能将文件从一个卷移动到另一个卷。但如设置了MOVEFILE_COPY_ALLOWED标记,MoveFileEx可以做到这一点
当参数dwFlags为MOVEFILE_DELAY_UNTIL_REBOOT时,移动文件的操作在系统下次重新启动时才进行,MoveFileEx进行的操作只是把要移动的文件的信息写入注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\PendingFileRenameOperations下。函数的返回值只反映写入注册表的操作是否成功。

MoveFileExVC声明

编辑

MoveFileEx函数原型

BOOL MoveFileEx(
LPCTSTR lpExistingFileName, // file name
LPCTSTR lpNewFileName, // new file name
DWORD dwFlags // move options
);

MoveFileEx参数说明

lpExistingFileName,一个存在的文件或者文件夹字符串指针
lpNewFileName ,一个还没存在的文件或者文件夹的字符串指针
dwFlags ,一个或多个下述常数:
MOVEFILE_COPY_ALLOWED
如移动到一个不同的卷,则复制文件并删除原来的文件。
MOVEFILE_CREATE_HARDLINK
系统保留,以供将来使用。
MOVEFILE_DELAY_UNTIL_REBOOT
移动操作在系统下次重新启动时正式进行。
MOVEFILE_FAIL_IF_NOT_TRACKABLE
如果来源文件是一个 LINK 文件,但是文件在移动后不能够被 TRACKED,则函数执行失
败。如果目标文件在一个 FAT 格式的文件系统上,则上述情况可以发生。这个参数不支持
NT 系统。(我想这里说的可能是移动快捷方式的情况,如果快捷方式指定的目标文件不存在
或无法定位,则操作失败,由于没有时间测试,暂时这样理解。)
MOVEFILE_REPLACE_EXISTING
如目标文件存在,则将其替换 。
MOVEFILE_WRITE_THROUGH
这个标记允许函数在执行完文件移动操作后才返回,否者不等文件移动完毕就直接返回
。如果设置了 MOVEFILE_DELAY_UNTIL_REBOOT 标记,则 MOVEFILE_WRITE_THROUGH 标记将
被忽略。
参考资料
词条标签:
计算机学