关于“记录学生上网记录”求救!(200分)

  • 主题发起人 主题发起人 pass-1
  • 开始时间 开始时间
P

pass-1

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在正用Delphi5在做一个学生管理系统,其中学校有一要求:记录学生上网记录,即学生浏览过的网站,并限制浏览非法黄色网站。我从来没有做过这方面的软件,而学校又催得很急。急得我快不行了,请各位高手指点一下。
 
这样的情况下,找一个现成的软件不行吗?
 
我是这样想的,在每次上网时,历史记录中会自动增加查看过的网页,将这些信息提取出来放入你的管理系统的一张表中就可以了吧
没做过,想想而已
 
找一个现成的反黄软件
你记录哪个IP是谁在用就可以,以后查的时候只要两个软件里的信息一对照就可以知道是谁在浏览什么网站了
 
不行,主要是要和原先做的程序绑定起来使用!并且数据要存放在服务器上。
 
To wangxian11
这种方式我也想过,好象也能实现,最好是历史记录增加时我的程序就会记录。
 
To liuchengr
学校不想投入额外的金额,使用反黄软件不大可能。
 
基本功能我这里有源码,和我联系。
楼主兄弟我把相关源码发给你。yckxzjj@163.com
Delphi编程驿站:http://www.delphidak.com
 
To刀剑如梦:
你好,我的邮箱地址是:whbestsoft@163.com
 
To刀剑如梦:
你好,我的邮箱地址是:smallshi@163.com
 
获取当前所有打开的IE地址:
const
maxx=30;
var
shellwindow:IShellwindows;
i,ncount:integer;
spDisp:IDispatch;
vi:olevariant;
Ie1:Iwebbrowser2;
begin
listbox1.Clear;
shellwindow:=Coshellwindows.create;
ncount:=shellwindow.Count;
for i:=0 to ncount-1 do
begin
vi:=i;
try
spdisp:=shellwindow.Item(vi);
except
exit;
end;
if (spdisp<>nil) then
begin
try
spdisp.QueryInterface(iwebbrowser2,ie1);
except
on EAccessViolation do
begin
exit;
end;
end;
if (IE1<>nil) then
begin
listbox1.Items.Add(ie1.get_LocationURL());
end;
end;
end;
end;
 
刀剑如梦提供的源码与netcore提供的一样。
------------------------------------------------
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
shdocvw, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
log: TMemo;
Button2: TButton;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
ShellWindow: IShellWindows;
nCount: integer;
spDisp: IDispatch;
i: integer;
vi: OleVariant;
IE1: IWebBrowser2; //IE这里是源代码:

begin
ShellWindow := CoShellWindows.Create;
nCount := ShellWindow.Count;
for i := 0 to nCount - 1 do
begin
vi := i;
try
spDisp := ShellWindow.Item(vi);
except exit end;
if (spDisp<>nil) then
begin
try
begin
spDisp.QueryInterface( iWebBrowser2, IE1 );
end
except
on EAccessViolation do begin exit end;
end;
if (IE1 <> nil) then
begin
Log.Lines.add( IE1.Get_LocationURL());
end;
end;

end;
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
form1:=nil;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
form1.Button1Click(sender);
end;

end.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部