给初学者:VB如何操作WEB页的浏览提交———三:学会拨号和断开,内容想发就发,别拿IP限制我!

本文提供了一段VB6代码,用于实现断开PPPoE连接及检测是否处于连接状态的功能。该方法适用于Windows XP SP2系统,通过调用Windows API函数如RasHangUp和RasGetConnectStatus等来实现。代码还包含了创建连接的函数。

众所周知,我们用的PPPOE是动态IP的,所以想用IP地址限制我们是难了点!

 以下这些代码是在以前的光盘上找的,没有作者,就算转贴吧,其实利用拨号的那个东东也能实现断线,但是我试了试有的机器上不行滴,就用了另外一种方式,所以代码比较杂,不过函数也没有什么参数,直接调用就行了,我们还是以好用为主!

 使用时只要注意是拨号~~~而且你的WINDOWS拨号连接(WINDOWSXP自带的拨号,其他软件的话请参考相应的帮助文件,一般软件都应该支持命令行操作,那你就不用下面的代码了,直接写SHELL*****)已经设置好帐号和密码了~~~

以下是代码,放在模块内。(VB6 SP6  WINXP SP2测试通过)

Option Explicit

Private Declare Function RasHangUp Lib "RasApi32.dll" Alias "RasHangUpA" (ByVal hRasConn As Long) As Long
Private Declare Function RasEnumConnections Lib "RasApi32.dll" Alias "RasEnumConnectionsA" (lprasconn As Any, lpcb As Long, lpcConnections As Long) As Long
Public Declare Function RasGetConnectStatus Lib "RasApi32.dll" Alias "RasGetConnectStatusA" (ByVal hRasCon As Long, lpStatus As Any) As Long
Const RAS95_MaxEntryName = 256
Const RAS95_MaxDeviceName = 128
Const RAS_MaxDeviceType = 16
Const RAS95_MaxDeviceType = 16
Private Type RASCONN95
'set dwsize to 412
dwSize As Long
hRasConn As Long
szEntryName(RAS95_MaxEntryName) As Byte
szDeviceType(RAS_MaxDeviceType) As Byte
szDeviceName(RAS95_MaxDeviceName) As Byte
End Type

Public Type RASCONNSTATUS95
    dwSize As Long
    RasConnState As Long
    dwError As Long
    szDeviceType(RAS95_MaxDeviceType) As Byte
    szDeviceName(RAS95_MaxDeviceName) As Byte
End Type
Const INTERNET_DIALSTATE_DISCONNECTED = 1
Const INTERNET_AUTODIAL_FORCE_ONLINE = 1
Const INTERNET_AUTODIAL_FORCE_UNATTENDED = 2
Const INTERNET_DIAL_UNATTENDED = &H8000

Dim iHandle As Long

Private Declare Function InternetDial Lib "wininet.dll" ( _
    ByVal hwndParent As Long, _
    ByVal lpszConnectoid As String, _
    ByVal dwFlags As Long, _
    lpdwConnection As Long, _
    ByVal dwReserved As Long) As Long
   
'参数dwConnection指定拨号连接句柄
Private Declare Function InternetHangUp Lib "wininet.dll" _
    (ByVal dwConnection As Long, _
    ByVal dwReserved As Long) As Long
 
'断开
 
Public Sub CloseConnected()
Dim lngRetCode As Long
Dim lpcb As Long
Dim lpcConnections As Long
Dim intArraySize As Integer
Dim intLooper As Integer

ReDim lprasconn95(intArraySize) As RASCONN95
lprasconn95(0).dwSize = 412
lpcb = 256 * lprasconn95(0).dwSize
lngRetCode = RasEnumConnections(lprasconn95(0), lpcb, lpcConnections)

If lngRetCode = 0 Then
If lpcConnections > 0 Then
For intLooper = 0 To lpcConnections - 1
RasHangUp lprasconn95(intLooper).hRasConn
Next intLooper
Else
MsgBox "没有拨号网络连接!", vbInformation
End If
End If
End Sub

'检测
Public Function IsConnected() As Boolean    '返回T时为连接
    Dim TRasCon(255) As RASCONN95
    Dim lg As Long
    Dim lpcon As Long
    Dim RetVal As Long
    Dim Tstatus As RASCONNSTATUS95
    '
    TRasCon(0).dwSize = 412
    lg = 256 * TRasCon(0).dwSize
    '
    RetVal = RasEnumConnections(TRasCon(0), lg, lpcon)
    If RetVal <> 0 Then
        MsgBox "产生错误!", vbInformation, "提示"
        Exit Function
    End If
    '
    Tstatus.dwSize = 160
    RetVal = RasGetConnectStatus(TRasCon(0).hRasConn, Tstatus)
    If Tstatus.RasConnState = &H2000 Then
        IsConnected = True
    Else
        IsConnected = False
    End If
End Function

'拨号
Public Function AddConnected()
    '建立名称为wt的连接,连接成功后连接句柄保存在iHandel中
    InternetDial Form1.hWnd, "wt", INTERNET_AUTODIAL_FORCE_UNATTENDED, iHandle, 0
End Function

内容概要:本文研究了一种面向全速域永磁同步电机(PMSM)的无传感器复合控制策略,提出并实现了基于高频信号注入与自适应滑模观测器(SMO)的加权融合架构,通过Simulink进行全面的仿真实验验证。该策略旨在解决传统无传感器控制在全速域内性能不均的问题,尤其针对零低速区反电动势微弱难以观测的瓶颈,创新性地采用脉振方波高频注入法实现高精度转子初始定位;在中高速区,则引入模糊超螺旋滑模观测器,有效抑制抖振并提升系统对参数摄动外部干扰的鲁棒性;最关键的是,在高低速切换的过渡区域,设计了动态加权平滑切换机制与相位同步校正算法,通过对两种观测器输出的位置速度信号进行智能加权融合,从根本上消除了切换瞬间的电流与转矩冲击,保证了全速域内控制的连续性与平稳性。全文系统阐述了从系统架构设计、核心算法推导到切换逻辑实现的全过程,并通过多维度仿真对比,充分论证了该融合方案在全速范围内实现高精度、强鲁棒、无感控制的优越有效性。; 适合人群:具备扎实的电机控制理论、现代控制理论基础以及熟练的MATLAB/Simulink仿真技能,且正在从事电气自动化、新能源汽车驱动、工业伺服系统或机器人关节控制等领域的研工程师与科研人员。; 使用场景及目标:①攻克永磁同步电机在零低速启动全速域运行下的无位置传感器控制技术难题;②深入学习并掌握高频信号注入法、滑模观测器(特别是超螺旋滑模)的工作原理、数学模型构建与Simulink实现技巧;③研究并实践多观测器异构融合、动态加权切换、相位补偿等先进系统集成技术,以提升复杂控制系统在不同工况下的稳定性平滑过渡能力。; 阅读建议:此资源以Simulink仿真实现为核心载体,深度融合了理论分析与工程实践。建议读者严格按照目录结构循序渐进地学习,重点剖析不同速度区间所采用的差异化控制策略的设计思,深刻理解模糊超螺旋SMO的抗抖振机理,并特别关注动态加权切换模块的实现细节与相位校正算法的数学依据。务必动手运行、调试修改所提供的仿真模型,通过改变参数、观察波形来验证理论,从而真正掌握这一复合控制架构的精髓。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值