如何使用程序实现控制上网?也就是分级控制

uscool 2003-12-12 05:23:34
IE中有个分级控制,现在需要使用程序来进行监控,使用RSAC分级控制策略,如何实现?如果没有使用RSAC分级的网页又该如何进行检测?或者使用过滤关键字的方法,如何实现?
谢谢!
...全文
20 21 打赏 收藏 举报
写回复
21 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhaodaguang2003 2004-01-12
using System;
using System.Diagnostics ;
using System.Runtime.InteropServices;
using System.Collections;
using System.Net .Sockets ;
namespace fupip
{
public class geturl
{
public geturl()
{

}
[DllImport( "user32.dll ")]
public static extern int GetClassName(int hwnd, byte[] lpClassName,Int32[] nMaxCount);


[DllImport( "user32.dll ")]
public static extern int GetWindow(int hwnd,int wCmd);

[DllImport( "user32.dll ")]
public static extern int SendMessage(int hwnd,int wMsg,int wParam, byte[] lParam);


public const int GW_CHILD = 5;
public const int GW_HWNDNEXT = 2;
public const int WM_GETTEXT =13;
public const int WM_GETTEXTLENGTH = 14;

public static string[] GetIEURL(string args)
{

string[] urls;

Process[] ps =Process.GetProcessesByName(args);
urls=new string[ps.Length];
for(int i=0;i <ps.Length;i++)
{
int hwndIE=(int)ps[i].MainWindowHandle;

int hwndEdit=getkid(hwndIE);


urls[i]= gettext(hwndEdit);



}
return urls;
}




static int getkid(int hwnd)
{
byte[] str=new byte[100];
Int32[] len=new Int32[1];
int hwndkid=0;
string classname;
int handle=0;
len[0]=100;
ArrayList al=new ArrayList();


GetClassName(hwnd,str,len);
classname=System.Text.Encoding.ASCII.GetString(str);


if(classname.Substring(0,4)== "Edit ")
{

handle= hwnd;
}

hwndkid=GetWindow(hwnd,GW_CHILD);

while(hwndkid!=0)

  • 打赏
  • 举报
回复
zhaodaguang2003 2004-01-12
using System;
using System.Diagnostics ;
using System.Runtime.InteropServices;
using System.Collections;
using System.Net .Sockets ;
namespace fupip
{
public class geturl
{
public geturl()
{

}
[DllImport( "user32.dll ")]
public static extern int GetClassName(int hwnd, byte[] lpClassName,Int32[] nMaxCount);


[DllImport( "user32.dll ")]
public static extern int GetWindow(int hwnd,int wCmd);

[DllImport( "user32.dll ")]
public static extern int SendMessage(int hwnd,int wMsg,int wParam, byte[] lParam);


public const int GW_CHILD = 5;
public const int GW_HWNDNEXT = 2;
public const int WM_GETTEXT =13;
public const int WM_GETTEXTLENGTH = 14;

public static string[] GetIEURL(string args)
{

string[] urls;

Process[] ps =Process.GetProcessesByName(args);
urls=new string[ps.Length];
for(int i=0;i <ps.Length;i++)
{
int hwndIE=(int)ps[i].MainWindowHandle;

int hwndEdit=getkid(hwndIE);


urls[i]= gettext(hwndEdit);



}
return urls;
}




static int getkid(int hwnd)
{
byte[] str=new byte[100];
Int32[] len=new Int32[1];
int hwndkid=0;
string classname;
int handle=0;
len[0]=100;
ArrayList al=new ArrayList();


GetClassName(hwnd,str,len);
classname=System.Text.Encoding.ASCII.GetString(str);


if(classname.Substring(0,4)== "Edit ")
{

handle= hwnd;
}

hwndkid=GetWindow(hwnd,GW_CHILD);

while(hwndkid!=0)

  • 打赏
  • 举报
回复
uscool 2003-12-22
up
  • 打赏
  • 举报
回复
uscool 2003-12-21
up
  • 打赏
  • 举报
回复
流梓 2003-12-18
可以试试用美萍
  • 打赏
  • 举报
回复
cuckoo_7 2003-12-18
关注
  • 打赏
  • 举报
回复
uscool 2003-12-18
to: napsoft(乡下人)
我们是想开发同类的软件,可以借鉴,但是其中技术又有谁会说呢?
呵呵!
  • 打赏
  • 举报
回复
bankliu 2003-12-17
~~~~~~~~~找这个:
ZoneIdentityPermission
在System.Security.Permissions中~关于权限,
也许对你有帮助?我没研究过~
  • 打赏
  • 举报
回复
李洪喜 2003-12-16
UP
  • 打赏
  • 举报
回复
zxwdl 2003-12-16
up
  • 打赏
  • 举报
回复
elite2018 2003-12-16
wmi 行不 , 不知道
  • 打赏
  • 举报
回复
uscool 2003-12-15
大家可以去看看这个!
http://www.rsac.org/rsac/
  • 打赏
  • 举报
回复
conquersky 2003-12-15
  • 打赏
  • 举报
回复
NavyBlue 2003-12-14
ding
  • 打赏
  • 举报
回复
sharplee82 2003-12-14
楼主的意思我还不明白,先顶一下。
  • 打赏
  • 举报
回复
uscool 2003-12-13
偶是西安的!
呵呵!先发了一个给误删了,郁闷?!
只好重发了!
谁会啊!给各思路先!
  • 打赏
  • 举报
回复
cchinasp 2003-12-13
关注。
  • 打赏
  • 举报
回复
GreenSpring 2003-12-13
mark
  • 打赏
  • 举报
回复
tjq_tang 2003-12-13
up
  • 打赏
  • 举报
回复
juqiang 2003-12-13
楼主是济南的?昨天正好听到一个兄弟问这个事情。
  • 打赏
  • 举报
回复
加载更多回复
相关推荐
发帖
C#
加入

10.7w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2003-12-12 05:23
社区公告

让您成为最强悍的C#开发者