内存补丁
以下是VC代码。我转换成DELPHI 出了错误,请大家分析下。VC代码运行正确。DELPHI编译是正确的,但运行出错。
struct delphi_string
{
DWORD len;
char text[256];
};
void AddChatString(LPCTSTR string, COLORREF b=0xffffff, COLORREF f=0)
{
DWORD p=0x00479AE0;
delphi_string d;
ZeroMemory(&d,sizeof(d));
d.len=strlen(string);
strcpy(d.text,string);
DWORD t=(DWORD)d.text;
__asm
{
push eax
push edx
push ecx
push f
mov ecx, b
mov edx, [t]
mov eax, 004F7D8Ch
mov eax, [eax]
call p
pop ecx
pop edx
pop eax
}
}
////////////DELPHI
Tdelphi_string = packed record
len : DWORD;
text : string[255];
end;
procedure AddChatString(sstring:PAnsiChar; b:DWORD;f:DWORD);
const
p=$00479AE0;
var
d:Tdelphi_string;
t:DWORD;
begin
ZeroMemory(@d,sizeof(d));
d.len:=strlen(sstring);
d.text:=sstring;
t:=dword(@d.text);
asm
push eax
push edx
push ecx
push f
mov ecx, b
mov edx, t
mov eax, [$004F7D8C]
mov eax, [eax]
call [p]
pop ecx
pop edx
pop eax
end;
end;
struct delphi_string
{
DWORD len;
char text[256];
};
void AddChatString(LPCTSTR string, COLORREF b=0xffffff, COLORREF f=0)
{
DWORD p=0x00479AE0;
delphi_string d;
ZeroMemory(&d,sizeof(d));
d.len=strlen(string);
strcpy(d.text,string);
DWORD t=(DWORD)d.text;
__asm
{
push eax
push edx
push ecx
push f
mov ecx, b
mov edx, [t]
mov eax, 004F7D8Ch
mov eax, [eax]
call p
pop ecx
pop edx
pop eax
}
}
////////////DELPHI
Tdelphi_string = packed record
len : DWORD;
text : string[255];
end;
procedure AddChatString(sstring:PAnsiChar; b:DWORD;f:DWORD);
const
p=$00479AE0;
var
d:Tdelphi_string;
t:DWORD;
begin
ZeroMemory(@d,sizeof(d));
d.len:=strlen(sstring);
d.text:=sstring;
t:=dword(@d.text);
asm
push eax
push edx
push ecx
push f
mov ecx, b
mov edx, t
mov eax, [$004F7D8C]
mov eax, [eax]
call [p]
pop ecx
pop edx
pop eax
end;
end;
...全文
相关推荐
WinXP 4G大内存支持 xp4g内存 xp 4g内存补丁 4g补丁(大内存补丁)
为了解决这个问题,开发者创建了特定的补丁工具,如"WinXP 4G大内存支持",允许系统识别和使用4GB以上的内存。
32位XP4G内存补丁完美解决4G以上内存
标签“32位内存补丁”表明这个补丁是专门针对32位系统的内存问题设计的,它不是用于64位操作系统的。在压缩包的文件名中:1.
FSX内存溢出补丁
为了解决这一问题,专门出现了“FSX内存溢出补丁”。FSX内存溢出补丁的主要作用在于优化游戏的内存管理机制,减少或防止因内存使用不当导致的游戏异常。
虚拟内存补丁
这种动态管理和调度策略使得有限的物理内存可以支持更多程序的运行。补丁的目的是解决或优化原有系统存在的问题。对于虚拟内存补丁,可能涉及以下几个方面:1.
内存4g补丁
在实施4G内存补丁之前,用户应确保满足以下条件:1. 操作系统为32位,并且支持内存补丁技术。2. 已经安装了超过4GB的物理内存。3. 对系统的稳定性有一定风险承受能力,因为补丁可能带来不稳定因素。


语言基础/算法/系统设计
