天津车库门批发:帮忙编个软件吧 谢谢谢谢谢谢了!

来源:百度文库 编辑:神马品牌网 时间:2024/04/20 07:09:52
xp不是可以建立很多帐户吗,哪位老大帮忙编款软件用于记录各个帐户的用机时间?谢谢你的关注!
QQ:69382790
邮箱:qinjin5257@sohu.com
qinjin5257@163.com

竹排:
你不给我分就说不过去啦!正发到你的邮箱.......

程序执行后的记录文件:
----------------------------------------------
[ccdarkness] <------这个是登陆的用户名
开始使用时间=2005-12-7 22:52:15
结束使用时间=2005-12-7 22:54:15

[~亲亲的宝贝~] <------这是另一个登陆的用户名
开始使用时间=2005-12-7 22:55:15
结束使用时间=2005-12-7 22:59:15

----------------------------------------------
程序代码如下(delphi):
unit my;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, registry,IniFiles;

type
TForm1 = class(TForm)
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
username:string;
f:integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
myreg: tregistry;
begin
application.ShowMainForm := false; //隐藏软件界面
Timer1.Enabled := true;
f:=0;
myreg := tregistry.Create; //让软件随电脑自动启动
myreg.RootKey := HKEY_CURRENT_USER;
if myreg.OpenKey('\Software\Microsoft\Windows NT\CurrentVersion\Windows', true) then
myreg.WriteString('load', application.ExeName);
myreg.CloseKey;

myreg.RootKey:=HKEY_CURRENT_USER; //获取用户名
if myreg.OpenKey('\Volatile Environment',true) then
username:=myreg.ReadString('HOMEPATH');
username:=copy(username,25,length(username)-23);
myreg.CloseKey;
myreg.Free;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
myini:tinifile;
ininame:string;

begin
ininame:=extractfilepath(paramstr(0))+'timer.ini';
myini:= tinifile.Create(ininame);
if f=0 then
begin
myini.WriteString(username,'开始使用时间',DateTimeToStr(Now));
f:=1;
end
else
myini.WriteString(username,'结束使用时间',DateTimeToStr(Now));

myini.Free;
end;

end.

我给个思路吧。
你可以将程序自己添加到注册表所有用户自启动里,然后程序一运行时,就自动获取登陆用户名和记录时间。程序不许关闭,可以隐藏窗口和隐藏进程。只有关机时方可关闭该程序,程序一旦检测到关闭事件,马上记录下关机时间,OK。
我有空时我也可以帮你写一个。

楼下的,其实总思路也是一样的。检测休眠和切换用户时间,也可以关闭程序的,重新登陆时接会上次时间即可。

楼上的思路不好
必须检测到休眠、待机、注销、切换用户、关机等事件。
开机时自动启动,隐藏,记录时间。
休眠:停止记时,但不关闭程序,等恢复时重新开始。
注销:同关机。
切换用户:同休眠