首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

怎么用汇编得到IE的安装路径?

2012-02-23 
如何用汇编得到IE的安装路径?????我的一个汇编程序已调试成功但是还想在里面加一个功能,要用到IE的路径其

如何用汇编得到IE的安装路径?????
我的一个汇编程序已调试成功

但是还想在里面加一个功能,要用到IE的路径

其实只要获得系统安装的盘符就行了     然后加上\Program   Files\Internet   Explorer\IEXPLORE.EXE     就行了

但是如何获得系统安装的盘符???       如何连接字符串???

最后结果要放到dd类型的值里

还有个问题         如何用汇编实现sleep()的功能???       当然不能用循环的方法       因为耗费cpu



[解决办法]
Sleep() 功能的实现, 还是得借助系统函数实现吧, Sleep() 自首应该是比较简单的了. 循环里面加上 hlt 指令可能会对 cpu 的占用有所改善, 但对时间控制上又会多了些周折.

加入 advapi32, 对文件不应该有直接的 1K 的增大. 如果确实不能使用它的话, 要么试试 GetEnvironmentVariable( "ProgramFiles ")+ "\Internet Explorer " 来确定 ie 的路径. 不过, 这时设定的 IE 自身路径名是缺省的, 虽然绝大多数场合都是的:
....
.const
szProg db 'ProgramFiles ', 0
szIE db '\Internet Explorer ', 0

.data?
szProgPath db MAX_PATH dup (?)

.code
start:
invoke GetEnvironmentVariable, addr szProg, addr szProgPath, MAX_PATH - 1
invoke lstrcat, addr szProgPath, addr szIE
invoke MessageBox, NULL, addr szProgPath, addr szProg, MB_OK or MB_ICONINFORMATION
....

GetEnviroonmentVariable() 函数是 kernel32 中的, 一般不需要再行加入
[解决办法]
invoke GetWindowsDirectory,sysPath,sizeof sysPath

应该改成这样
invoke GetWindowsDirectory,addr sysPath,sizeof sysPath

另外 GetWindowsDirectory函数没有返回值sysPath就保存着windows目录的路径

热点排行