MoveFileEx 的MOVEFILE_DELAY_UNTIL_REBOOT 标志的用法!

该标志一般由安装程序使用,比如你想安装新的驱动程序时,由于旧的驱动程序仍被系统使用而无法删除或覆盖它。在这种情况下,安装程序可以把新的驱动程序拷贝到一个临时的目录中,然后用MOVEFILE_DELAY_UNTIL_REBOOT标志调用MoveFileEx,。当系统重启后,系统就在启动之前用新的驱动程序代替旧的驱动程序。因为该标志可以用来在重启后覆盖一个文件。

 

       它还可以在重启后删除一个文件,当要删除的文件由于被系统使用而无法删除时,可以用此方法。如:MoveFileEx(szDstFile, NULL, MOVEFILE_DELAY_UNTIL_REBOOT);

 

Windows95/98不支持 MoveFileEx 函数,为了在重启后重命名或删除一个文件,可以这样处理:

1、 Windows目录下检查 Wininit.ini 文件是否存在;

2、 如果Wininit.ini 文件存在,打开并添加新的项到[rename]字段中。如果文件不存在,则创建文件,并创建[rename]字段。

3、 按下面的格式添加:

DestinationFileName=SourceFileName

这两个值都必需用短文件名,NUL=DestinationFileName 可以用来删除一个文件。

你可能感兴趣的:(windows,null,delay)