使用C#实现ADSL自动拨号
--------------------------------------------------------------------------------
2007-12-27 00:14:27 标签:自动拨号 ADSL C# [推送到技术圈]
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://ssbird.blog.51cto.com/277690/56809
在网络编程中,有时候会需要重新拨号建立网络连接(如Ad点击软件通过重新拨号形成有效点击) ,下面介绍两种程序中拨号的方法.
1、最简单的方法:使用RasDial命令
RasDial是Windows自带的命令,使用非常简单。实际使用是可将下面代码保存为一个批处理文件,然后直接运行或在程序里进行调用。
rasdial.exe /disconnect '断开连接
del "C:\Documents and Settings\hyuqin\Cookies\*.*" /Q '清除Cookie
rasdial.exe 连接名 连接账户 连接密码 '重新拨号
2、封装为类,灵活调用
上面提到的方法虽然很简单,但并非标准的实现方法,使用时会受到一些限制,此时最好的办法就是将实现代码封装为类库。下面这个类库是网上一位朋友提供的,直接调用就行.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace ADSL
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//拨号
RASDisplay ras = new RASDisplay();
ras.Connect("ADSL");
}
private void button2_Click(object sender, EventArgs e)
{
//断线
RASDisplay ras = new RASDisplay();
ras.Disconnect();
}
}
public struct RASCONN
{
public int dwSize;