95/98/2000的API函数地址是否相同?

vBin 2001-09-20 05:18:14
请看下面这段代码,在98下好用,但在2000下不好用。
如何改才可以?不要告诉我直接CALL MESSAGEBOX 那我也知道
在2000下显示的错误是不能读XXXXXXX内存
------------------------------------------------------
.386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\comctl32.inc
include \masm32\include\user32.inc
include \masm32\include\gdi32.inc
include \masm32\include\comdlg32.inc

includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\comctl32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\comdlg32.lib

FuncA proto

.data
ok db "okokok...",0
goaddr dd 0
.code
start:
push 64
lea eax,ok
push eax
push eax
push 0
call msgbox
invoke ExitProcess,0

msgbox:
mov goaddr,0BFF541BAH
jmp goaddr


end start

...全文
147 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
vBin 2001-09-21
  • 打赏
  • 举报
回复
再问一下吧,SOFTICE FOR 2000的
哪里有下载?而且好用。

我机器中的那个就总是按装一半时显示
不能读XXXXXX地址。唉。
vBin 2001-09-21
  • 打赏
  • 举报
回复
非要作Export Table吗?
好吧,看样子只能这样做啦。
本来这是我最后的打算。
wilddragon 2001-09-21
  • 打赏
  • 举报
回复
期待答案
wilddragon 2001-09-21
  • 打赏
  • 举报
回复
支持一把
wilddragon 2001-09-21
  • 打赏
  • 举报
回复
支持一把
vBin 2001-09-21
  • 打赏
  • 举报
回复
--------------------
上面说错啦,是引入表,不是输出表
Import Table 呵呵,真粗心。
vBin 2001-09-21
  • 打赏
  • 举报
回复
DXD兄,你可以直接告诉我地址吗?
他需要一个工作日审核我的帐号,我等不及。谢谢

--------------------
上面说划啦,是引入表,不是输入出
Import Table 呵呵,真粗心。
DXD 2001-09-21
  • 打赏
  • 举报
回复
到http://www.driverdevelop.com下载DriverStudio,里面包含SOFTICE FOR 2000
DXD 2001-09-20
  • 打赏
  • 举报
回复
98和2000的api地址铁定不一样.95的没装,应该也不一样.你要不想CALL MESSAGEBOX,而想直接从地址呼叫api函数,而且兼容以上系统,可以自己查找你要呼叫的api函数所在dll的输出表,得到地址.例子可以到网上查
Alex106 2001-09-20
  • 打赏
  • 举报
回复
当然不同的
qinzm 2001-09-20
  • 打赏
  • 举报
回复
dll版本不同的都不同
vBin 2001-09-20
  • 打赏
  • 举报
回复
谢谢各位

21,496

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧