看流星社区

 找回密码
 注册账号
查看: 2741|回复: 3

[Delphi] 请问这个函数哪里有问题谢谢

[复制链接]

该用户从未签到

发表于 2011-4-1 15:16:07 | 显示全部楼层 |阅读模式
function GetRoleBase(biaotie:string):integer;
var
  ptmp:integer;
  readByte:Dword;
begin
   result:=0;
   thWnd := FindWindow(nil,pchar(biaotie.text));//查找窗口,nil空。pchar在易语言里不用转换
                                                //PChar是以null结尾的字符型指针,Pointer是无类型的指针。string可以兼容pchar,反过来就要进行转化如
   jubinge.Text :=inttostr(thwnd)   ;          //inttostr是把整数转换文本,像易语言的到文本
   pid2 := GetWindowThreadProcessId(thwnd,@pid);
   jinchengide.Text :=inttostr(pid)   ;       //进程
   xianchengide.Text :=inttostr(pid2)   ;      //线程
   phandle := OpenProcess(2035711,False,pid);   //打开句柄

result:=ptmp;
end;

该用户从未签到

发表于 2011-4-1 15:16:29 | 显示全部楼层
result:=ptmp;  
你这个返回值是从那儿来的?

该用户从未签到

 楼主| 发表于 2011-4-1 15:16:57 | 显示全部楼层
我写这个目的是想写一个全局函数比如功能:
打开的时候先记录 人物经验
然后一个时间刷新的子程序不停的刷新,跟之前的初始经验对比这样就能知道一共获得了多少经验值,这个思路怎么写高手指教一下谢谢

该用户从未签到

发表于 2011-4-1 15:17:09 | 显示全部楼层
个人的一些思路,没测试过,参考参考


var
CountExpOrg , CountExpEnd ,CountTime: dword;      //Org初始经验,End最后经验,CountTime计数器
CountExpArg:dword;  //Arg平均经验


procedure TForm1.Button1Click(Sender: TObject); //挂机开始钮
begin
  .....
CountExpTimer.Enabled := True; //开始timer
CountTime:=0; //初始化计数器
CountExpOrg:=W2I_ROLE_EXPER; //记录刚开始经验
......
end;

procedure TForm1.CountExpTimer(Sender: TObject);  //设定为间隔1秒
begin
  CountTime:=CountTime+1;  //秒数计数器,每秒+1
  CountExpEnd:=W2I_ROLE_EXPER; //记录最后经验
  CountExpArg:= Round ((3600/CountTime)*(CountExpEnd-CountExpOrg)); //每小时获得之平均经验
end;
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-20 06:12

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表