易语言VPN路由模块源码
系统结构:取系统错误信息,取整数指针,取字节集指针,IpAddrToString,取操作系统版本,GetThis,添加路由,删除路由,GetIf,创建VPN,VPN连接,AddConnection,backMsg,获取连接过程信息,获取连接信息,取拨号连接IP,挂断拨号连接,RasEnumConnections,RasGetProjectionInfo,GlobalSize_RASCONN,GlobalSize_RASpppIP,GlobalSize_MIB_IPFORWARDROW,GlobalSize_MIB_IPADDRROW,RasGetErrorString,RasHangUp,RtlMoveMemory_Text,RtlMoveMemory_MIB_IPFORWARDROW,RtlMoveMemory_MIB_IPADDRROW,DeleteIpForwardEntry,GetIpForwardTable,inet_addr,CreateIpForwardEntry,FormatMessage,GetLastError,RegCloseKey,RegQueryValueEx,RegOpenKeyEx,RegSetValueEx,StrToIntEx,RegisterWindowMessage,GetIpAddrTable,复制内存数据,创建连接,设置连接,lstrcpy,RasDial,GetIpInterfaceEntry,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |
======公用程序集
| |
| |------ 取系统错误信息
| |
| |------ 取整数指针
| |
| |------ 取字节集指针
| |
| |------ IpAddrToString
| |
| |------ 取操作系统版本
| |
| |
======程序集2
| |
| |------ GetThis
| |
| |------ 添加路由
| |
| |------ 删除路由
| |
| |------ GetIf
| |
| |------ 创建VPN
| |
| |------ VPN连接
| |
| |------ AddConnection
| |
| |------ backMsg
| |
| |------ 获取连接过程信息
| |
| |------ 获取连接信息
| |
| |------ 取拨号连接IP
| |
| |------ 挂断拨号连接
| |
| |
======调用的Dll
| |
| |---[dll]------ RasEnumConnections
| |
| |---[dll]------ RasGetProjectionInfo
| |
| |---[dll]------ GlobalSize_RASCONN
| |
| |---[dll]------ GlobalSize_RASpppIP
| |
| |---[dll]------ GlobalSize_MIB_IPFORWARDROW
| |
| |---[dll]------ GlobalSize_MIB_IPADDRROW
| |
| |---[dll]------ RasGetErrorString
| |
| |---[dll]------ RasHangUp
| |
| |---[dll]------ RtlMoveMemory_Text
| |
| |---[dll]------ RtlMoveMemory_MIB_IPFORWARDROW
| |
| |---[dll]------ RtlMoveMemory_MIB_IPADDRROW
| |
| |---[dll]------ DeleteIpForwardEntry
| |
| |---[dll]------ GetIpForwardTable
| |
| |---[dll]------ inet_addr
| |
| |---[dll]------ CreateIpForwardEntry
| |
| |---[dll]------ FormatMessage
| |
| |---[dll]------ GetLastError
| |
| |---[dll]------ RegCloseKey
| |
| |---[dll]------ RegQueryValueEx
| |
| |---[dll]------ RegOpenKeyEx
| |
| |---[dll]------ RegSetValueEx
| |
| |---[dll]------ StrToIntEx
| |
| |---[dll]------ RegisterWindowMessage
| |
| |---[dll]------ GetIpAddrTable
| |
| |---[dll]------ 复制内存数据
| |
| |---[dll]------ 创建连接
| |
| |---[dll]------ 设置连接
| |
| |---[dll]------ lstrcpy
| |
| |---[dll]------ RasDial
| |
| |---[dll]------ GetIpInterfaceEntry
调用的DLL命令:
.DLL命令 RasEnumConnections, 整数型, "Rasapi32.dll", "RasEnumConnectionsA", , 获取所有活动的拨号连接的信息(连接句柄和设置信息),返回值为0时表示执行成功,非0表示错误代码。
.参数 lprasconn, RASCONN, 传址 数组, 接收活动连接的缓冲区的指针
.参数 lpcb, 整数型, 传址, 缓冲区大小
.参数 lpcConnections, 整数型, 传址, 实际的活动连接数
.DLL命令 RasGetProjectionInfo, 整数型, "Rasapi32.dll", "RasGetProjectionInfoA", , 获取指定活动的拨号连接的动态IP信息,返回值为0时表示执行成功,非0表示错误代码。
.参数 hrasconn, 整数型, , 指定活动连接的句柄,RASCONN
.参数 rasprojection, 整数型, , RAS连接类型
.参数 lpprojection, TRASPPPIP, 传址, 接收动态IP信息的缓冲区
.参数 lpcb, 整数型, 传址, 接收缓冲区的大小
.DLL命令 GlobalSize_RASCONN, 整数型, "kernel32.dll", "GlobalSize", , 取结构尺寸
.参数 结构, RASCONN, 传址
.DLL命令 GlobalSize_RASpppIP, 整数型, "kernel32.dll", "GlobalSize", , 取结构尺寸
.参数 结构, TRASPPPIP, 传址
.DLL命令 GlobalSize_MIB_IPFORWARDROW, 整数型, "kernel32.dll", "GlobalSize", , 取结构尺寸
.参数 结构, MIB_IPFORWARDROW, 传址
.DLL命令 GlobalSize_MIB_IPADDRROW, 整数型, "kernel32.dll", "GlobalSize", , 取结构尺寸
.参数 结构, MIB_IPADDRROW, 传址
.DLL命令 RasGetErrorString, 整数型, "RasApi32.dll", "RasGetErrorStringA", , RasHangUpA
.参数 ErrorValue, 整数型, , RetVal
.参数 ErrorString, 文本型, 传址
.参数 cBufSize, 整数型
.DLL命令 RasHangUp, 整数型, "RasApi32.DLL", "RasHangUpA", , 挂断当前拔号连接
.参数 hRasConn, 整数型, , 连接句柄
.DLL命令 RtlMoveMemory_Text, , , "RtlMoveMemory", , 复制内存数据_文本参数
.参数 Destination, 字节型, 数组, 目标地址
.参数 Source, 文本型, , 要复制的数据
.参数 Length, 整数型, , 长度
.DLL命令 RtlMoveMemory_MIB_IPFORWARDROW, , , "RtlMoveMemory", , 复制内存数据_MIB_IPFORWARDROW参数
.参数 Destination, MIB_IPFORWARDROW, 传址, 目标地址
.参数 Source, 字节集, , 要复制的数据MIB_IPFORWARDROW
.参数 Length, 整数型, , 长度
.DLL命令 RtlMoveMemory_MIB_IPADDRROW, , , "RtlMoveMemory", , 复制内存数据_MIB_IPFORWARDROW参数
.参数 Destination, MIB_IPADDRROW, 传址, 目标地址
.参数 Source, 字节集, , 要复制的数据MIB_IPFORWARDROW
.参数 Length, 整数型, , 长度
.DLL命令 DeleteIpForwardEntry, 整数型, "iphlpapi.dll", "DeleteIpForwardEntry"
.参数 pRoute, MIB_IPFORWARDROW, 传址
.DLL命令 GetIpForwardTable, 整数型, "iphlpapi.dll", "GetIpForwardTable"
.参数 pIpForwardTable, 字节集, 传址, MIB_IPFORWARDTABLE
.参数 pdwSize, 整数型, 传址
.参数 bOrder, 逻辑型
.DLL命令 inet_addr, 整数型, "ws2_32.dll", "inet_addr"
.参数 文本, 文本型, 传址, cp
.DLL命令 CreateIpForwardEntry, 整数型, "iphlpapi.dll", "CreateIpForwardEntry"
.参数 pRoute, MIB_IPFORWARDROW, 传址
.DLL命令 FormatMessage, 整数型, "kernel32.dll", "FormatMessageA"
.参数 dwFlags, 整数型, , 错误信息类型标志
.参数 lpSource, 整数型, , 指定本地信息定义 其依赖于第一个参数的设置
.参数 dwMessageId, 整数型, , 指定被请求的消息标示,如果dwFlags设置为FORMAT_MESSAGE_FROM_STRING 这个参数将被忽略
.参数 dwLanguageId, 整数型, , 指定被请求的消息的语言标示
.参数 lpBuffer, 文本型, , 用来保存格式话后的消息字符串的地址
.参数 nSize, 整数型, , 如果第一个参数为指定FORMAT_MESSAGE_ALLOCATE_BUFFER 这个参数就是字符串的最大长度
.参数 Arguments, 整数型
.DLL命令 GetLastError, 整数型, "kernel32.dll", "GetLastError"
.DLL命令 RegCloseKey, , , "RegCloseKey", , 关闭注册项
.参数 hkey
.DLL命令 RegQueryValueEx, , , "RegQueryValueExA", , 取注册表项
.参数 hKey
.参数 lpValueName, 文本型
.参数 lpReserved
.参数 lpType
.参数 lpData
.参数 lpcbData
.DLL命令 RegOpenKeyEx, , , "RegOpenKeyExA", , 打开注册表项
.参数 hKey
.参数 lpSubKey, 文本型
.参数 ulOptions
.参数 samDesired
.参数 phkResult
.DLL命令 RegSetValueEx, , , "RegSetValueExA", , 写注册表项
.参数 hKey
.参数 lpValueName, 文本型
.参数 Reserved
.参数 dwType
.参数 lpData
.参数 cbData
.DLL命令 StrToIntEx, 整数型, "shlwapi.dll", "StrToIntExA"
.参数 转换文本, 文本型, , pszString
.参数 标志, 整数型, , dwFlags 10 0 16 1
.参数 返回值, 整数型, 传址, piRet
.DLL命令 RegisterWindowMessage, 整数型, , "RegisterWindowMessageA"
.参数 lpString, 文本型
.DLL命令 GetIpAddrTable, 整数型, "iphlpapi.dll", "GetIpAddrTable"
.参数 pIpAddrTable, 字节集, 传址, 未知类型:PMIB_IPADDRTABLE。
.参数 pdwSize, 整数型, 传址
.参数 bOrder, 逻辑型
.DLL命令 复制内存数据, , , "RtlMoveMemory"
.参数 Destination, 字节型, 数组
.参数 Source, 文本型
.参数 Length, 整数型
.DLL命令 创建连接, 整数型, "rasapi32.dll", "RasSetEntryPropertiesA"
.参数 lpszPhonebook
.参数 lpszEntry, 文本型
.参数 lpRasEntry, RASENTRY
.参数 dwEntryInfoSize, 整数型
.参数 lpbDeviceInfo
.参数 wDeviceInfoSize
.DLL命令 设置连接, 整数型, "rasapi32.dll", "RasSetCredentialsA"
.参数 lpszPhonebook
.参数 lpszEntry, 文本型
.参数 lpCredentials, RASCREDENTIALS
.参数 fClearCredentials, 整数型
.DLL命令 lstrcpy, 整数型, "kernel32.dll", "lstrcpyA", , lstrcpyA
.参数 文本1, 字节型, 数组, RetVal
.参数 文本2, 文本型, , Ptr
.DLL命令 RasDial, 整数型, "RasApi32.dll", "RasDialA", , RasDialA
.参数 lpRasDialExtensions, 整数型, , RetVal
.参数 lpszPhonebook, 整数型, , RetVal
.参数 lprasdialparams, RASDIALPARAMS95, , RetVal
.参数 dwNotifierType, 整数型, , RetVal
.参数 lpvNotifier, 整数型, , RetVal
.参数 lphRasConn, 整数型, 传址, RetVal
.DLL命令 GetIpInterfaceEntry, 整数型, "Iphlpapi.dll", "GetIpInterfaceEntry", , WIN7系统用的API
.参数 text, 文本型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。