PendingFileRenameOperations键值应该怎么改?(已解决)
本帖最后由 dearmb 于 2011-1-17 08:27 编辑查资料说修改这个键值可以更新文件
但是一直没改明白
查论坛就一个帖子,没看明白什么意思,能教俺一下么?
我的理解就是在注册表里建立
然后填写
\ \ ç:??\ Program Files文件\的Outlook Express \ tempp \ 9x.exe
\ \ ç:??\ Program Files文件\的Outlook Express \ tempp \ CALDERA.MBR
这样的句子,就是句子没看明白
比如说,我现在要把C:\WINDOWS\Fonts\arial.ttf替换掉,它正在被使用
D:\Fonts\arial.ttf是要替换上去的文件,怎么做呢? 这个是AU3的范围内吗? 也算吧,要拿AU3实现啊
以前还有个帖子的作者给他发论坛短信也不应我,只好发帖请教了
肯定有人也会的吧 我那个帖子不说的很明白了。。 我那个帖子不说的很明白了。。
YoDe 发表于 2011-1-16 05:14 http://autoitx.com/images/common/back.gif
呃……你的没看明白……
刚找到个这个,容易理解
;===============================================================================
; 说明: 在系统重启后移动/删除文件
; 语法: _FileMoveAtReboot($sSFile[, $sTFile = ""])
; 参数: $sSFile - 源文件
; $sTFile - [可选] 目标文件。如果不指定,文件将在重启后被删除
; 需要: 无
; 返回: 成功 - 1
; 失败 - 0, 并设置 @error 到
; 1 - 源文件不存在
; 2 - 权限不足。需要管理员组或 LocalSystem 帐户权限
; 3 - API 调用失败
; 备注: 源文件和目标文件必须在同一卷
;===============================================================================
Func _FileMoveAtReboot($sSFile, $sTFile = "")
Local $sRegTmp, $iDel, $aResult
$iDel = 0x5 ; MOVEFILE_REPLACE_EXISTING + MOVEFILE_DELAY_UNTIL_REBOOT
If NOT FileExists($sSFile) Then Return SetError(1, 0, 0)
$sRegTmp = "PendingFileRenameOperations" & Random(1000, 9999, 1)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager", $sRegTmp, "REG_MULTI_SZ", "Test")
If @error Then Return SetError(2, 0, 0)
RegDelete("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager", $sRegTmp)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager", "AllowProtectedRenames", "REG_DWORD", 1)
If $sTFile = "" Then
$aResult = DllCall("kernel32.dll", "int", "MoveFileEx", "str", $sSFile, "ptr", "", "dword", $iDel)
Else
$aResult = DllCall("kernel32.dll", "int", "MoveFileEx", "str", $sSFile, "str", $sTFile, "dword", $iDel)
EndIf
If @error OR $aResult = 0 Then
Return SetError(3, 0, 0)
Else
Return 1
EndIf
EndFunc ;==>_FileMoveAtReboot
页:
[1]