代码如下:
procedure TService1.Timer1Timer(Sender: TObject); var
handle,myhwnd:hwnd;
begin
myhwnd:=FindWindow(nil,'test-client');
if myhwnd=0 then
winexec(PChar('D:\cstest\cstest\Client\Client.exe'), SW_SHOWNORMAL);
end;就是client,不会显示其界面。
procedure TService1.Timer1Timer(Sender: TObject); var
handle,myhwnd:hwnd;
begin
myhwnd:=FindWindow(nil,'test-client');
if myhwnd=0 then
winexec(PChar('D:\cstest\cstest\Client\Client.exe'), SW_SHOWNORMAL);
end;就是client,不会显示其界面。
解决方案 »
- Delphi调用GetDC传送给MFC dll异常
- sql 语句问题
- [Fatal Error] Could not create output file 'E:\meetsys\meetsys.exe'
- IdTcpClient如何接受IdTcpServer返回的值
- c/s 数据库远程传输显示数据问题
- 函数请教
- 菜鸟问:Delphi中安装的控件怎么给它删除呢?
- 我被dephi愚弄郁闷MircoSoft Ole DB Provider for Oracle &Oracle Provider for Ole DB 到底有什么区别?
- 如何实现滚动效果???
- 请帮忙指出以下语句的错误。
- 请问Delphi编写的ActiveX控件中,如何获取WM_DEVICECHANGE消息。
- 用TOleContainer内嵌word怎么才能向word插入书签
我也碰到这样的问题!
就是服务A启动起来了,这个服务也启动某个(B)程序【任务管理器也能看见B.exe】,但是界面没有显示,请问你是怎样解决的呢?
1:服务程序默认是工作于Winlogon桌面的,可以打开控制面板,查看我们刚才那个服务的属性-->登陆,其中"允许服务与桌面交互"打钩就可
2:用程序;创建服务时:
schService=CreateService(schSCManager,
szServiceName, //服务名字
szDisplayName, //服务名字
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS|SERVICE_INTERACTIVE_PROCESS,
SERVICE_AUTO_START,
SERVICE_ERROR_NORMAL,
szPath, //服务(.exe)路径
NULL,
NULL,
NULL,
NULL,
NULL
);SERVICE_WIN32_OWN_PROCESS 修改为:SERVICE_WIN32_OWN_PROCESS|SERVICE_INTERACTIVE_PROCESS现在在服务属性时就可以看见"允许服务与桌面交互"自动√了。