[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

Description of your first forum.

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期四, 2003年6月26日 19:20


如何做出象“Windows优化大师”那样优化维护日志啊?将这些日志自动记录下来,然后生成一个文本文件,里面可以保存系统使用的各种信息,如什么人什么时候登陆的,都做了那些操作等等,做这样一个功能该如何做啊,有人做过吗?能否告知具体方法呢,或者能提出好的建议,谢谢了。
余下200分送给给我帮助的人。
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子Alex_Y » 星期四, 2003年6月26日 19:38


一般是通过写INI文件来记录,具体操作INI文件可以参考帮助.为每一个帐号建立一个INI文件来记录用户数.然后就很简单了.
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子spacepoint » 星期四, 2003年6月26日 19:47


可以先记到数据库中,然后在需要时动态生成。
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期四, 2003年6月26日 21:37


操作INI文件的帮助那里有啊,没有接触过,还请赐教。

放到数据库中,恩,这个方法可能实现起来简单点,看看。
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子wfzha » 星期四, 2003年6月26日 21:57


读xxx.ini
   With TIniFile.Create(ExtractFilePath(Application.EXEName)+'xxx.ini') do
   begin
     p_dw:=ReadString('Public','P_dw','');
     p_SplashBmp:=ReadString('Public','p_Splashbmp','');
     p_BackGroundBmp:=ReadString('Public','p_BackGroundBmp','');
     p_DelayTime:=ReadInteger('Public','p_DelayTime',0);
     p_PageHeight:=ReadFloat('Public','p_PageHeight',29.7);
     p_PageWidth:=ReadFloat('Public','p_PageWidth',42);
     p_PageHeightb:=ReadFloat('Public','p_PageHeightb',29.7);
     p_PageWidthb:=ReadFloat('Public','p_PageWidthb',42);
     p_Dyfx:=ReadInteger('Public','p_Dyfx',0);
     p_Dyfxb:=ReadInteger('Public','p_Dyfxb',0);
     p_CustomPage:=ReadBool('Public','p_CustomPage',True);
     Free;
   end;
 end;
写ini
   With TIniFile.Create(ExtractFilePath(Application.EXEName)+'xxx.ini') do
   begin
     WriteString('Public','P_dw',p_dw);
     WriteString('Public','p_Splashbmp',p_splashbmp);
     WriteString('Public','p_BackGroundBmp',p_backgroundBmp);
     WriteInteger('Public','p_DelayTime',P_DelayTime);
     WriteFloat('Public','p_PageHeight',p_PageHeight);
     WriteFloat('Public','p_PageWidth',p_PageWidth);
     WriteFloat('Public','p_PageHeightb',p_PageHeightb);
     WriteFloat('Public','p_PageWidthb',P_PageWidthb);
     WriteInteger('Public','p_Dyfx',P_Dyfx);
     WriteInteger('Public','p_Dyfxb',P_Dyfxb);
     WriteBool('Public','p_CustomPage',P_CustomPage);
     Free;
   end;


 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期四, 2003年6月26日 22:23


谢谢,能解释下吗?
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子wfzha » 星期四, 2003年6月26日 22:35


ReadString 第一个参数是段名,第二个参数是变量名,第三个是默认值 返回值读出得值
write....同read 无返回值
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期四, 2003年6月26日 22:51


哦,是这样啊,谢谢啦
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期五, 2003年6月27日 07:51


但是一般我需要如何记录这些信息而实现系统日志的功能呢
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子wfzha » 星期五, 2003年6月27日 18:27


不知道你要实现的具体情况怎样,一般来说,日志直接用TStringList生成就行了
一行一条,格式自定。不用用这个。Windows优化大师没用过,不知道他的是什么样。
例子:
  var s:string;
      str:tstringlist;
begin
   str:=Tstringlist.create;
   for i:=1 to 10 do begin
      s:=inttostr(i)+':'+Timetostr(now);
      str.add(s);
   end;
   str.savetofile('test.txt');
   str.free;
end;
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子rainM » 星期六, 2003年6月28日 09:55


其实我问的问题并不是说如何保存记录的结果,而是我想知道如何去记录这些信息,怎么才能收集到这些信息呢?大家有什么方法或建议吗,谢啦。
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子st_cumt » 星期日, 2003年7月6日 11:57


单机使用INI,网络使用保存在数据库,实现最好放在父级窗体
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子linfinder » 星期日, 2003年7月6日 12:04


在每一个事件后,写入日志,最后保存日志,启动软件后读取日志,Ini文件操作。
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子 » 星期日, 2003年7月6日 12:11


---------------------引用------------------
如什么人什么时候登陆的,都做了那些操作等等
-------------------------------------------
优化大师有这些功能吗?这样做必需保证记录程序一直在运行
如果要记录简单的方法可以做计时,每隔一会查一下当前窗口句柄,记录下窗口标题(也就是执行了什么程序),至于用户可直接从注册表获得,记录文件如楼上每位所言,最好用ini文件,delphi提供了专门操作ini文件的组件,操作很方便
 
 
 

[500分]如何做出象“Windows优化大师”那样优化维护日志啊?

帖子 » 星期日, 2003年7月6日 12:12


补充一下,如果还要记录鼠标或鍵盘操作的话,就用hook吧