.版本 2
.支持库 spec
.程序集 窗口程序集1
.程序集变量 要取的进程名称, 文本型
.子程序 __启动窗口_创建完毕
要取的进程名称 = “360se.exe”
' 源码是易语言论坛一位版主的,我个人加了下自定义进程,外面有卖这个收费,但是我是因为自己要做加速器,才弄个这个东西,既然大家需要,那我就分享给大家吧
.子程序 yHan_GetLinks, , 公开, 取连接,支持win7
.局部变量 arg, 文本型, , "13"
.局部变量 pbuf, 整数型
.局部变量 i, 整数型
.局部变量 状态, 文本型
.局部变量 本地, 文本型
.局部变量 远程, 文本型
.局部变量 pid, 整数型
.局部变量 dwState, 整数型
.局部变量 win7, 逻辑型
.局部变量 hHeap, 整数型
.局部变量 num, 整数型
arg = { “已关闭”, “正在监听”, “同步发送”, “同步接收”, “已建立”, “FIN_WAIT1”, “FIN_WAIT2”, “关闭等待”, “正在关闭”, “最后确认”, “延时等待”, “删除”, “未知” }
hHeap = GetProcessHeap ()
.如果 (GetProcAddress (LoadLibrary (“iphlpapi.dll”), “AllocateAndGetTcpExTableFromStack”) = 0)
InternalGetTcpTable2 (pbuf, hHeap, 1)
win7 = 真
.否则
AllocateAndGetTcpExTableFromStack (pbuf, 真, hHeap, 2, 2)
.如果结束
num = GetDate (pbuf, 0)
pbuf = pbuf + 4
.计次循环首 (num, i)
' 调试输出 (1 + i)
dwState = GetDate (pbuf, 0)
状态 = arg [选择 (dwState > 12 或 dwState < 1, 13, dwState)]
本地 = 指针到文本 (inet_ntoa (GetDate (pbuf, 4))) + “:” + 到文本 (ntohs (GetDate (pbuf, 8)))
远程 = 指针到文本 (inet_ntoa (GetDate (pbuf, 12))) + “:” + 到文本 (ntohs (GetDate (pbuf, 16)))
pid = GetDate (pbuf, 20)
.如果真 (pid = 进程_名取ID (要取的进程名称))
调试输出 (“TCP”, 远程)
' 调试输出 (添加路由 (远程, “255.255.255.0”, “45.79.83.149”, , , ))
.如果真结束
pbuf = pbuf + 选择 (win7, 28, 24)
.计次循环尾 ()
HeapFree (hHeap, 0, pbuf)
' hHeap = GetProcessHeap ()
.' 如果 (win7)
' InternalGetUdpTableWithOwnerPid (pbuf, hHeap, 1)
.否则
' AllocateAndGetUdpExTableFromStack (pbuf, 真, hHeap, 2, 2)
.如果结束
.' 计次循环首 (GetDate (pbuf, 0), i)
' 本地 = 指针到文本 (inet_ntoa (GetDate (pbuf, 4))) + “:” + 到文本 (ntohs (GetDate (pbuf, 8)))
' pid = GetDate (pbuf, 12)
' 调试输出 (“UDP”, 本地, pid)
' pbuf = pbuf + 12
.' 计次循环尾 ()
' HeapFree (hHeap, 0, pbuf)
.子程序 GetDate, 整数型
.参数 addr, 整数型
.参数 offset, 整数型
返回 (取字节集数据 (指针到字节集 (addr + offset, 4), #整数型, ))
.子程序 _按钮1_被单击
yHan_GetLinks ()
易语言指定进程代理ip
指定进程IP
易语言+指定IP+运行程序
易语言取进程的IP
易语言获取进程IP端口号
指定进程ip