WinHex脚本函数

Create “D:\My File.txt” 1000
创建一个1000字节的新文件,如果已经存在同名文件,则将其覆盖。
Open “D:\My File.txt”
Open “D:\*.txt”
打开指定格式的文件,如果通配符为“?”则winhex会让用户选择要打开的文件。
Open C:
Open D:
打开指定的逻辑驱动器。如果通配符为“:?”则winhex会让用户选择要打开的逻辑驱动器或者磁盘。
Open 80h
Open 81h
Open 9Eh
打开指定的物理介质。软盘的为00h,硬盘与u盘为80h,光盘为9Eh。
可以增加第二个参数来设定文件或者介质的编辑模式(“in-place”或者“read-only”)
CreateBackup
为活动文件的当前状态创建WHX备份。
CreateBackupEx 0 100000 650 true “F:\My backup.whx”
备份当前活动磁盘中从0扇区到100000扇区的数据。备份文件将自动分割成650M大小。并且选择了压缩选项。输出文件的路径以及名称作为最后的参数写入。
如果备份文件不需要分割,则第三个参数的数值该为0即可。如果不启动压缩功能则将“true”改为“false”。如果需要自动分配文件名以及文件路径则最后的参数表示为“”””即可。
Goto 0x128
Goto MyVariable
将光标的位置移动到偏移量0x128位置(16进制表示)。同样也可以用数字变量(最长8字节)来定义光标移动的位置。
Move -100
将当前光标的位置向后移动100字节(16进制)。
Write “Test”
Write 0x0D0A
Write MyVariable
在光标当前位置(以覆盖模式)写入ASCII字符“Test”或者两个字节的16进制数“0D0A”。这里同样可以写入数字变量中的值。同时将光标移动到被覆盖部分的后面。当到达文件的结尾时,将在文件尾部添加空字节以完成操作。下一个写命令将不会在文件尾巴。
Write2
和“Write”的功能类似,当时当到达文件结尾的时候,不会在文件添加空字节。
So it is not safe to assume that Write2 always moves the current position forward by the number of bytes written.
Insert “Test”
功能与“Write”类似,但是在“insert”模式只能应用于文件。
Read MyVariable 10
从当前位置读入10个字节的数据到“MyVariable”变量中。如果变量不存在,它将会创建一个。winhex同时可以支持48个不同的变量。另一个创建变量的命令是“Assign”。
ReadLn MyVariable
从当前位置读入一整行的数据到“MyVariable”变量中直到遇到换行符。如果变量已经存在了,则变量的大小将会被从新调整。
Close
不保存的关闭当前活动窗口。
CloseAll
不保存的关闭所有窗口。
Save
保存当前活动窗口中打开的文件或磁盘的修改。
SaveAs “C:\New Name.txt”
将当前活动窗口打开的文件另存为指定目录下的文件。如果通配符为“?”,则winhex会让用户自己选择保存的路径以及文件名。
SaveAll
保存所有窗口中修改。
Terminate
中断脚本的执行。
Exit
中断脚本的执行并且关闭winhex。
ExitIfNoFilesOpen
如果在winhex中没有打开的文件将终止脚本文件的执行。
Block 100 200
Block “My Variable 1” “My Variable 2”
在当前活动窗口中定义一个偏移量从100到200的选块(10进制)。下一行命令表示定义从变量”My Variable 1″到”My Variable 2″的选块(最长8字节)
Block1 0x100
在偏移量0x100处定义一个字节的选块。同样可以使用变量。
Block2 0x200
定义一个从开头到偏移量0x200部分的选块。同样可以使用变量。
Copy
将当前选块复制进剪切板中。如果没有定义选块,其功能和编辑菜单中的复制命令相同。
Cut
将当前选块中的文件剪切到剪切板中。
Remove
将当前选块中的数据从文件中移除。
CopyIntoNewFile “D:\New File.dat”
CopyIntoNewFile “D:\File +MyVariable+.dat”
将当前选块中的数据复制进指定的新文件,而不复制进剪切板。如果没有定义选块,其功能和编辑菜单中的复制命令相同。同样可以复制磁盘扇区中的数据作为一个新文件。新建的文件不会自动在winhex的编辑窗口中打开。可以在“+”之间加入变量,变量名将被解释为不大于2^24(16M)的整数。通常在循环应用以及文件恢复中比较有用。
Paste
将剪切板中的数据粘贴入文件中,并且不改变光标当前位置。
WriteClipboard
将剪切板中的数据写入文件或磁盘扇的当前位置中,不改变光标当前位置,并且覆盖从当前光标所在位置以后的数据。
Convert Param1 Param2
将当前活动文件中的数据从一种格式转换成另一种格式。有效的参数是ANSI,IBM,EBCDIC,Binary,HexASCII,IntelHex,
MotorolaS, Base64, UUCode, LowerCase, 以及UpperCase,与转换菜单中的转换菜单命令功能相同。
AESEncrypt “My Password”
使用AES加密当前活动文件或者磁盘,或其选块,使用指定的密钥(最高32位)。
AESDecrypt “My Password”
解密当前活动文件或磁盘。
Find “John” [MatchCase MatchWord Down Up BlockOnly SaveAllPos Unicode Wildcards]
Find 0x1234 [Down Up BlockOnly SaveAllPos Wildcards]
分别搜索当前活动窗口中名为“john”的字符串或16进制值数0x1234,并且在第一个搜索到的地方停下来。其他的参数是可选的。
默认的winhex搜索整个文件或磁盘。其他的可选参数功能和通常的winhex搜索选项相同。
ReplaceAll “Jon” “Don” [MatchCase MatchWord Down Up BlockOnly Unicode Wildcards]
ReplaceAll 0x0A 0x0D0A [Down Up BlockOnly Wildcards]
在当前活动窗口中使用其他的值替换所有存在上述字符串或16进制数值的地方。在“in-place”模式下只能应用与磁盘。
CopyFile C:\A.dat D:\B.dat
将C:\A.dat文件中的内容复制到D:\B.dat中。
MoveFile C:\A.dat D:\B.dat
将C:\A.dat文件转移到D盘中并命名为D:\B.dat。
DeleteFile C:\A.dat
将C:\A.dat文件删除。
InitFreeSpace
InitSlackSpace
使用当前初始化设置清理当前逻辑驱动器中的所有自由空间或松散空间,InitSlackSpace将驱动器的模式临时转换为“in-place”模式,以保存未保存的修改。
InitMFTRecords
使用当前初始化设置在当前NTFS格式的逻辑驱动器中清理未使用的MFT FILE记录。对于其他的文件系统无效。修改立即就会写入硬盘中。
GetClusterAlloc MyStr
在逻辑卷中,找回哪个文件被储存在当前簇中的文本描述,然后将描述保存到指定的变量中。
GetClusterAllocEx IntVar
在逻辑卷中,找回一个整数值指示簇是否被分配,1或者非0,表示该簇已被分配。并且将描述保存在指定变量中。
GetClusterSize IntVar
返回逻辑卷中簇的大小,并将数值保存到指定的变量中。
InterpretImageAsDisk
将磁盘镜像或证据文件作为原始物理磁盘或分区一样对待。需要specialist或forensic许可。
CalcHash HashType MyVariable
CalcHashEx HashType MyVariable
与工具菜单中的hash命令功能相同并且将变量储存在指定变量中(如果变量不存在,则会自动创建)。HashType参数必须为以下类型中的一种:CS8, CS16, CS32, CS64, CRC16, CRC32, MD5, SHA-1, SHA-256, PSCHF。CalcHashEx命令将在windows窗口中显示hash值。
MessageBox “Caution”
显示信息对话框,并且提供ok和cancel两个按钮。按下cancel按脚本本。
ExecuteScript “ScriptName”
在脚本的当前运行处运行另一个脚本。调用其他外部脚本可以镶套使用。当被调用的脚本执行完成以后,脚本继续执行下面的命令。这个特征可以帮助用户清楚的了解脚本的结构。
Turbo On
Turbo Off
管理道模式开关。
Debug
用户可以利用该命令确定脚本中的每一条命令都是否有效。
UseLogFile
错误信息被写入当前文件夹下的日志文件“scripting.log”。这些信息不会显示在信息对话框中。非常有用,特别在运行的脚本主机无法远程连接的时候。

温馨提示: 本文最后更新于2019-12-10,至今已有1599天,某些文章具有时效性,若有错误或已失效,请在下方留言
© 版权声明
THE END
喜欢就支持一下吧❀
点赞3投币 分享
评论 抢沙发

    请登录后查看评论内容