60.windbg----as、$u0(固定别名、自定义别名)
来源:互联网 发布:java中级程序员面试题 编辑:程序博客网 时间:2024/05/21 19:30
-------------------------------------------------------------------------------------
固定别名($u0~$u9)
有10个固定别名。他们是$u0, $u1, ..., $u9。他们的等价字符串可以是不包含ENTER键的任意字符串。
使用r (Registers)命令为固定别明指定等价字符串。定义固定别名时,必须在字母"u"之前插入点号(.)。等号(=)之后的文本是等价字符串。等价字符串可以包含空格或分号,但是头部和尾部的空格被忽略掉。不能用引号将等价字符串括起来(除非希望替代结果中包含引号)。
注意 r (Registers)命令设置固定别名容易混淆。这些别名不是寄存器或伪寄存器,即使使用了r命令来设置了他们的等价字符串。这些别名前不需要添加at符号(@),也不能使用r命令来显示这些别明的值。
默认情况下,如果没有定义固定别名,他们是空字符串。
0:000> r $.u0 = test1!wmain0:000> .echo $u0test1!wmain0:000> u $u0 L2test1!wmain [d:\windbg\test1\test1.cpp @ 16]:01071a40 55 push ebp01071a41 8bec mov ebp,esp注意是$.u0
自定义别名
as 和aS 命令定义一个新的别名或重新定义已存在的别名语法:
as Name EquivalentLine aS Name EquivalentPhrase aS Name "EquivalentPhrase" as /e Name EnvironmentVariable as /ma Name Address as /mu Name Address as /msa Name Address as /msu Name Address as /x Name Expression aS /f Name File as /c Name CommandString
0:000> as /e path_evn path0:000> al Alias Value ------- ------- path_evn C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\Common Files\Adobe\AGL;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\CMake\bin;C:\Program Files\doxygen\bin;C:\Python33;C:\GnuWin32\bin;C:\Qt\4.7.1;C:\Program Files\VanDyke Software\Clients\;D:\mysql\bin;C:\Program Files (x86)\SciTools/bin/pc-win32;C:\Program Files (x86)\Debugging Tools for Windows (x86)把环境变量path赋给了path_evn
如果用户别名是和命令的其他部分是连续的,就必须使用${用户别名}将用户别名包围起来,或者使用空格把别名和其他部分分隔开来:
0:000> as ENTRY $exentry0:000> al Alias Value ------- ------- ENTRY $exentry 0:000> dd ENTRY L200e2af95 358f36e9 63e1e9000:000> dd ENTRY+2 L2Couldn't resolve error at 'ENTRY+2 '0:000> dd ENTRY +2 L200e2af97 e900358f 002c63e10:000> dd ${ENTRY}+2 L200e2af97 e900358f 002c63e1
但因为固定别名的长度是确定的,所以可以直接用$u0,而不需要大括号
0:000> r $.u0=$exentry0:000> dd $u0+200e2af97 e900358f 002c63e1
使用al可以列出所有用户命令别名,使用ad可删除指定或全部(ad*)用户别名
0:000> al Alias Value ------- ------- ENTRY $exentry windbg> .hh ad0:000> ad ENTRY 0:000> alNo aliases
我们先找个字符串:
0:006> da 0136004d 0136004d "!This program cannot be run in D"0136006d "OS mode....$"
/ma 将别名的等价值设置为从地址Address 开始的null结尾的ASCII字符串。
0:006> as /ma asciistring 0136004d 0:006> al Alias Value ------- ------- asciistring !This program cannot be run in DOS mode.$
如c盘下有1.txt,内容为
http://dump.gamesafe.qq.com/cgi-bin/susup/infocheck?FileHash=aee771cb&FileSize=18602&SusBaseAddr=0&FileName=2013-09-18-11-04-03.dmp&PgmName=test.exe&ClientPath=E:\项目SVN\ied_sec_client_proj\trunk\Tools\BugTraceEx\output\vc6\2013-09-18-11-04-03.dmp&ClientVersion=0&Uin=0&Qt=0&game_id=3&mac=8c89a5f50b24&guid=5d022ec05c6b100aec7dab5c26509d79&crashmodule_name=test.exe&crashmodule_version=0&crashexe_name=test.exe&crashexe_version=0&ime_count=1&ime_name_1=SOGOUWB.IME&ime_version_1=2.0.1.1198&safesoftware_count=1&safesoftware_name_1=QQPCTray.exe&safesoftware_version_1=8.4.10062.224&zone_id=265&os_main_version=6&os_minor_version=1
0:006> aS /f 1file c:\1.txt0:006> al Alias Value ------- ------- 1file http://dump.gamesafe.qq.com/cgi-bin/susup/infocheck?FileHash=aee771cb&FileSize=18602&SusBaseAddr=0&FileName=2013-09-18-11-04-03.dmp&PgmName=test.exe&ClientPath=E:\项目SVN\ied_sec_client_proj\trunk\Tools\BugTraceEx\output\vc6\2013-09-18-11-04-03.dmp&ClientVersion=0&Uin=0&Qt=0&game_id=3&mac=8c89a5f50b24&guid=5d022ec05c6b100aec7dab5c26509d79&crashmodule_name=test.exe&crashmodule_version=0&crashexe_name=test.exe&crashexe_version=0&ime_count=1&ime_name_1=SOGOUWB.IME&ime_version_1=2.0.1.1198&safesoftware_count=1&safesoftware_name_1=QQPCTray.exe&safesoftware_version_1=8.4.10062.224&zone_id=265&os_main_version=6&os_minor_version=1
- 60.windbg----as、$u0(固定别名、自定义别名)
- AS 别名
- AS子句作为别名
- oracle with as 表别名
- oracle with as 表别名
- jquery自定义别名
- MyBatis之自定义别名
- Git别名调用自定义操作
- 使用alias别名自定义命令
- Git命令自定义别名配置
- Linux自定义命令别名配置
- 47.windbg-${} Alias Interpreter 别名解释器 (windbg script)
- oracle with 别名 as (select * from *)
- sql 之as(Aliases)别名(mysql)
- 修改自定义key store 别名和密码
- linux终端自定义命令的别名
- mybatis自定义别名与sql片段
- Mybatis学习之自定义别名Typealiases(四)
- linux驱动学习(八) i2c驱动架构 i2c驱动分析
- 十进制经纬度与经纬度度分秒之间的互相转换
- MYSQL设置远程用户连接
- 如何自学图像编程
- ubuntu9.10更新源
- 60.windbg----as、$u0(固定别名、自定义别名)
- GitHub上最火的40个Android开源项目(一)
- 5款创业在线学习的工具
- Fuel4D 2.1 免费跨平台游戏引擎 现已发布
- 火狐浏览器安装flash插件
- Windows页目录自映射方案
- Java面向对象高级--包装类
- SoftReference缓存图片以及图片的异步加载
- MatLab计算图像圆度