起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 168|回复: 7

【结贴】[重要]求助:想要在系统启动后自动运行一个功能 如何实现

[复制链接]
发表于 2008-4-15 09:28:38 | 显示全部楼层 |阅读模式
如题
[B]
求助:想要在系统启动后自动运行一个功能 如何实现[/B]

看了论坛上同样问题的回帖 有下面几种办法

1.重载TINIT的Dorun 函数 加入自己想要自动启动的功能代码,但是这种办法论坛上有人说在注销后再登录就不会执行到了

2.在协同常量库代码中 runfunc 函数中加入 自己想要运行的功能代码,但是这种情况会在窗体上方自动加一个标签,把功能窗体放在里面

3.在标准风格主窗体的 create过程中 加入功能执行代码 但是我想要实现的是主窗体显示完毕后再显示这个自动运行起来功能的窗体 并且不把它加入到上面到标签栏中

请问如何实现 我想如果加到系统运行库中调用标准风格主窗体show过程的语句后面应该就可以了

但是找不到 请求帮助
回复

使用道具 举报

发表于 2008-4-15 09:43:42 | 显示全部楼层
runfunc 的最后一个参数为true就不会放到标签栏了,而是showmodal的方式
回复 支持 反对

使用道具 举报

发表于 2008-4-15 10:18:45 | 显示全部楼层
上面的标签栏是因为功能运行起来,自动把功能的主窗体运行起来了,你这个功能是干啥用的,如果不是很用户操作的,仅仅是实现一种逻辑,例如定时检查等等,那么可以不定义主窗体,直接在功能上实现的逻辑,这样,用第二种方法就可以了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-15 10:21:38 | 显示全部楼层
最初由 atiger 发布
[B]上面的标签栏是因为功能运行起来,自动把功能的主窗体运行起来了,你这个功能是干啥用的,如果不是很用户操作的,仅仅是实现一种逻辑,例如定时检查等等,那么可以不定义主..

以下省略...... [/B]


就是启动后执行一个任务 不过可能会有些提示信息通过窗口显示出来 但是要在主窗体都显示出来之后才显示
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-15 10:26:44 | 显示全部楼层
最初由 zfang 发布
[B]runfunc 的最后一个参数为true就不会放到标签栏了,而是showmodal的方式 [/B]



以前的代码是这样子的
static function TRTLConsts.RunFuncs: string;
begin
  Result := 'Biz:\COLLABORATION\DesktopFunc.Func;' +
    'Biz:\COLLABORATION\SchedulerFunc.Func;' +
    'Biz:\COLLABORATION\TaskCenterFunc.Func';
end;


那个 现在(version:3002)的代码是这样子的
static function TRTLConsts.RunFuncs: TStringArray;
begin
  Result := TSystemConsts.RunFuncs;
end;

跟论坛上以前说的不一样 以前也好像没有那个参数 现在的情况下该如何设置那个参数啊?
回复 支持 反对

使用道具 举报

发表于 2008-4-15 11:08:50 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-16 16:29:04 | 显示全部楼层
最初由 zfang 发布
[B]你看这个帖子
http://bbs.justep.com/forum.php? ... highlight=uirunfunc [/B]


先结贴了 我觉得平台这块应该加强 不然有些功能实现起来十分的麻烦
谢谢答复
回复 支持 反对

使用道具 举报

发表于 2008-4-16 16:36:38 | 显示全部楼层
楼主,你这个问题可以这样
不要在标签栏显示,并且也不要showmodal显示功能窗体的时候

例如:
procedure TMainForm.Button1Click(Sender: TObject);
var
  lBizClassURL:TBizClassURL;
  lFunc:TFunc;
begin
  lBizClassURL:=TBizClassURL.Create;
  try   
    lBizClassURL.BizURL.URL:='Biz:\SPCZFERPXT\FUNC\ZJGZXMMC.Func';
    lFunc:=Context.GetBizObject(lBizClassURL) as TFunc;
    lFunc.Run('');
    lFunc.MainForm.Show;
  finally
    lBizClassURL.Free;
  end;
end;
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-10 19:17 , Processed in 0.041008 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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