请懂的朋友帮看看这个函数的返回值为什么只能取第一个字
Function Tform1.GW():WideChar;var
XID,a,b:PDWORD; // XID为当前选定怪物的ID
GWName:PWideChar; //这个定义的是怪物的名字
begin
a:=Pointer(GameBase);
a:=Pointer(a^+$1C);
XID:=Pointer(a^+$24);
XID:=Pointer(XID^+$974);
begin
b:=Pointer(a^+$8);
b:=Pointer(b^+$20);
b:=Pointer(b^+$18);
b:=Pointer(b^+4*(XID^ mod $301));
b:=Pointer(b^+$4);
b:=Pointer(b^+$274);
GWName:=Pointer(b^);
Result:=GWName^;
end;
procedure TForm1.Button22Click(Sender: TObject);
begin
Edit1.Text:=GW(); //编辑框里只显示了怪物名字的第一个字
end;
请朋友们帮我看看怎么取到完整的怪物名?? 返回值是WideChar(宽字符型) 字节数2个.正好一个汉字.
估计这个要修改返回值类型. 这里改一下试试:
GWName:arrayof widechar;//怪物名字
页:
[1]