易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi Services 里面Findwindow 问题

老产品维护问题,
Delphi 版本:delphi6

如果新建一个Application,
用一下Code可以获得正确的Handle
Delphi(Pascal) code:

procedure TForm1.Button1Click(Sender: TObject);
var
EVMHandle:HWND;
EVMTitle: String;
begin
EVMHandle:=FindWindow(nil,'console');
Showmessage(inttostr(EVMHandle));
end;



但如果写一个delphi service application,
返回的handle值一直是0
Delphi(Pascal) code:

procedure TSvcChkHandle.ServiceStart(Sender: TService;
var Started: Boolean);
var
EVMHandle: HWND;
begin
try
Coinitialize(nil);
EVMHandle:=FindWindow(nil,'console');
Writelog(inttostr(EVMHandle));
Started := True;
except
On E: Exception do LogMessage(E.Message);
end;
end;


console 是我一个应用程序的窗口标题

在线等,谢谢

有没有什么方法在service里面可以检查某一个应用程序是否在运行?

老的产品在service里用Findwindow 来判断应用程序是否运行,怀疑是否windows2000里面可以
,但XP或者更高版本有问题,我在网上查到很多类似问题,但还没有解决我目前问题的方法。

谢谢关注,请继续支招。

可以用 psapi 单元的 EnumProcesses 或者 toolhlp 单元的 CreateToolhelp32Snapshot, Process32First, Process32Next 来定


相关问答:

delphi内置的加密解密单元是哪个?

delphi内置的加密解密单元是哪个?
Delphi有内置加密解密单元?

delphi里有个加密和解密的单元

引用
delphi里有个加密和解密的单元


是哪个?

windows的api?

标准加密的源代码,网上 ......

转贴一封:Delphi程序员现状(招聘感想、招聘试题)

两个月前,开始招聘Delphi程序员,招聘前随手写了几道题,用来笔试。
    到现在还没有招到人,很无奈,标准甚至降到只要能做第1、3、5题就录用的水平。结果竟然没有人能够将这3题都答对。很多人连str ......

delphi savediglog多次保存问题

我在用mainmenu菜单控件和savediglog控件设置保存文件对话框时,虽然能够顺利保存文件,但是我对已经保存过的文件进行再次保存的时候,并不能和很多软件一样直接保存,而是仍然弹出保存对话框,而我不想它打开,而是 ......

delphi字符串操作 急

谁能给我一个判断邮箱是否合法的例子

多谢

提供些别的:
电子邮件地址的构成
  电子邮件地址的格式是“USER@SERVER.COM”,由三部分组成。
第一部分“USER”代表用户信箱的帐号,对于同一个邮件接 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号