电脑macip信息收集工具

阅读: 评论:0

电脑macip信息收集工具

电脑macip信息收集工具

2020春节 在家没事做 就想把之前的ip地址收集工具优化一下

简述一下之前的工具 使用au3编写 功能是通过ipconfig把相关信息写到同目录txt文档 文件名就是办公室人员信息

程序放在共享运行 数据也在共享 如果数据写入数据库 那么 程序可以放在web上下载 数据对用户不可见 增强安全性 可靠性

目标 :

1.数据直接写入数据库 免除后期数据整理的时间

2.获取ip信息 mac信息 包括真实mac和虚拟mac

3.如果可以 增加根据mac修改ip


mysql数据库读写 (au3)

#include "EzMySql.au3";EzMySql.au3源自网络,可自行下载
#include <Array.au3>
#include <String.au3>$server_input = "***.*******" ;链接地址 ip或域名
$port_input = "369" ;mysql端口建议不要使用默认
$user_input = "user" ;账号
$Pass_input = "pass" ;密码
$database_input = "sun" ;数据库#Region 连接数据库
If Not _EzMySql_Startup() Then ;;找到或创建libmysql.dll并创建一个MySQL结构MsgBox(0, "启动MySql时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())Exit
EndIfIf Not _EzMySql_Open($server_input, $user_input, $Pass_input, $database_input, $port_input) Then ;;打开一个MySql数据库MsgBox(0, "打开数据库时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())Exit
EndIfIf Not _EzMySql_SelectDB($database_input) Then ;使db指定的数据库成为默认数据库MsgBox(0, " 设置要使用的数据库时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())Exit
EndIf_EzMySql_Exec("set names 'GBK'") ;设置数据库 编码 ;缺少这个返回数据时显示中文乱码
#EndRegion 连接数据库$qidongkaiguan = 1 ;用来控制 代码测试,如果不想要把判断代码改为不成立即可;~ 1 简单测试代码
;~ 3 测试插入重复主键 是否成功
;~ 4 随机插入 数据
;~ 5  插入 1条完整数据Local $aneironglie1s[7] = ["Amb我ser", "Bl额ue", "Br人own", "Gr他ey", "Gr有een", "Haz到el", "R是ed"] ;原始数据 测试用
Local $aneirlie2s[6] = ["Bro想wn", "Bla新ck", "Blon车d", "Gr白ey", "G能reen", "P号ink"] ;;原始数据  测试用If $qidongkaiguan = 6 Then ;#Region 建立数据表  注意;测试出 列名不能是中文多字,成功的中文列名只能是1个字,建议英文字母做列名$sMySqlStatement = "CREATE TABLE IF NOT EXISTS qcjd (id int PRIMARY KEY,idtime char(17),mac char(17),mactt char(12),ipdz   char(15),mask char(15),gateway char(15),Friendly VarChar(50),Adapter VarChar(50),Description VarChar(50),Type VarChar(50),dns1 char(15),dns2 char(15),names VarChar(50),pcname VarChar(30))CHARSET=utf8;" ;   这里设置UTF8 是为了能在      【NAVICAT FOR MYSQL】 软件中能看到 正常的中文内容                                                                                                               ;数值类型If Not _EzMySql_Exec($sMySqlStatement) Then ;执行一个MySql查询。MsgBox(0, "建立数据表", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())ExitElseMsgBox(0, "建立数据表", '成功')
;~ 			ExitEndIf
EndIf ;控制代码$MacAddressRegKey = "HKEY_LOCAL_MACHINESYSTEMControlSet001ControlClass{4D36E972-E325-11CE-BFC1-08002BE10318}007"
$mac=RegRead($MacAddressRegKey, "NetworkAddress")$idtime=@YEAR&@YDAY&@HOUR&@MIN&@SEC&@MSEC
;$mac="01-02-03-04-05-06"
$mactt="010203040506"
$ipdz="192.168.100.202"
$mask="255.255.255.248"
$gateway="192.168.1.254"
$Friendly="本地连接"
$Adapter="{0c62z52636225225236516512523365236521525252}"
$Description="intel(r) enhereee coddsdxdon () dddd--dd"
$Type="Ethernet network interface"
$dns1="208.67.222.222"
$dns2="61.177.7.1"
$names="1906王主任"
$pcname=@ComputerName;~  
;~ $idtime=""
;~ $mac=""
;~ $mactt=""
;~ $ipdz=""
;~ $mask=""
;~ $gateway=""
;~ $Friendly=""
;~ $Adapter=""
;~ $Description=""
;~ $Type=""
;~ $dns1=""
;~ $dns2=""
;~ $names=""
;~ $pcname=""If $qidongkaiguan = 5 Then ;#Region 插入1条数据 测试重复插入结果$sMySqlStatement = "INSERT INTO qcjd ( `idtime`, `mac`, `mactt`, `ipdz`, `mask`, `gateway`, `Friendly`, `Adapter`, `Description`, `Type`, `dns1`, `dns2`, `names`, `pcname`) " & _" VALUES (unhex('" & _StringToHex($idtime) & "'),unhex('" & _StringToHex($mac) & "'),unhex('" & _StringToHex($mactt) & "'),unhex('" & _StringToHex($ipdz) & "'),unhex('" & _StringToHex($mask) & "'),unhex('" & _StringToHex($gateway) & "'),unhex('" & _StringToHex($Friendly) & "'),unhex('" & _StringToHex($Adapter) & "'),unhex('" & _StringToHex($Description) & "'),unhex('" & _StringToHex($Type) & "'),unhex('" & _StringToHex($dns1) & "'),unhex('" & _StringToHex($dns2) & "'),unhex('" & _StringToHex($names) & "'),unhex('" & _StringToHex($pcname) & "'));"If Not _EzMySql_Exec($sMySqlStatement) Then ;执行一个MySql查询。 可以多行。 无法处理结果MsgBox(0, "将数据插入表时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())ExitElseMsgBox(0, "将数据插入表", '成功')EndIf
EndIf ;控制代码If $qidongkaiguan = 3 Then ;#Region 插入1条数据 测试重复插入结果$sMySqlStatement = "INSERT INTO qcjd (id,Name,jiage) VALUES (unhex('" & _StringToHex('3') & "'),unhex('" & _StringToHex('测试重复111') & "'),unhex('" & _StringToHex('92222229.56122') & "'));"If Not _EzMySql_Exec($sMySqlStatement) Then ;执行一个MySql查询。 可以多行。 无法处理结果MsgBox(0, "将数据插入表时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())ExitElseMsgBox(0, "将数据插入表", '成功')EndIf
EndIf ;控制代码If $qidongkaiguan = 4 Then ;#Region 插入数据  注意:插入中文内容时,需要把数据转换成 16进制  ,再以 unhex('') 的方式传输到数据库,让数据库自动转换成正常数据Local $sMySqlStatement = ""For $i = 1 To 50$sMySqlStatement &= "INSERT INTO qcjd (id,Name,zhengshu,neironglie1,nronglie3,jiage,neirlie2) VALUES (" & _"'" & $i & "'," & _"'Person" & $i & "'," & _"'" & Random(1, 100, 1) & "'," & _"unhex('" & _StringToHex($aneironglie1s[Random(1, 7, 1)]) & "')," & _"unhex('" & _StringToHex($aneironglie1s[Random(1, 7, 1)]) & "')," & _"unhex('" & _StringToHex(Random(10, 99)) & "')," & _"unhex('" & _StringToHex($aneirlie2s[Random(0, 5, 1)]) & "'));"NextIf Not _EzMySql_Exec($sMySqlStatement) Then ;执行一个MySql查询。 可以多行。 无法处理结果MsgBox(0, " 将数据插入表时出错", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg())ExitEndIfMsgBox(0, "插入数据后 返回插入数据数量", _EzMySql_InsertID()) ;返回由先前的INSERT或UPDATE语句为AUTO_INCREMENT列生成的值
EndIf ;控制代码If $qidongkaiguan = 1 Then ;#Region 查询表中的所有数据 以二维数组的形式显示$aOk = _EzMySql_GetTable2d("SELECT * FROM qcjd;") ;传递一个二维数组,其中包含列名和已执行查询的数据$error = @errorIf Not IsArray($aOk) Then MsgBox(0, $sMySqlStatement & " error", $error)$fhjglie = _EzMySql_Columns() ;返回结果列$fhjghang = _EzMySql_Rows() ;返回结果行_ArrayDisplay($aOk, "查询表中的 所有数据 以二维数组的形式显示 (行):" & $fhjghang & "-" & $fhjglie & "(列) ")
EndIf ;控制代码If $qidongkaiguan = 1 Then ;#Region 查询表中符合的特定数据 以二维数组的形式显示$linshi = "2020049231722095"$aOk = _EzMySql_GetTable2d("SELECT * FROM qcjd WHERE idtime = '" & $linshi & "';") ;传递一个二维数组,其中包含列名和已执行查询的数据$error = @errorIf Not IsArray($aOk) Then MsgBox(0, $sMySqlStatement & " error", $error)_ArrayDisplay($aOk, "查询表中符合 neironglie1 = " & $linshi & " 的特定数据 以二维数组的形式显示")
EndIf ;控制代码If $qidongkaiguan = 1 Then ;#Region 查询表中符合特定条件的 5条 数据,然后以 一维数组 的形式,一条一条的展示$linshi = $aneirlie2s[Random(0, 5, 1)]If Not _EzMySql_Query("SELECT * FROM qcjd WHERE idtime = '" & $linshi & "' LIMIT 5;") Then ;查询单行MySql语句MsgBox(0, " 查询错误", "Error: " & @error & @CR & "Error string: " & _EzMySql_ErrMsg()) ;返回由先前的INSERT或UPDATE语句为AUTO_INCREMENT列生成的值。ExitEndIfFor $i = 1 To _EzMySql_Rows() Step 1 ;返回最后一个MySql查询的行数$a1Row = _EzMySql_FetchData() ;从上一个MySql查询中获取1行数据_ArrayDisplay($a1Row, "查询表中符合 " & $linshi & " 条件的 5条 数据,然后以 一维数组 的形式,一条一条的展示 结果: " & $i)Next
EndIf ;控制代码If $qidongkaiguan = 1 Then ;#Region 查询表中符合特定条件  neirlie2 列中 包含 想 的数据 ,以二维数组的形式显示$aOk = _EzMySql_GetTable2d("SELECT * FROM qcjd WHERE idtime LIKE '%20%';") ;传递一个二维数组,其中包含列名和已执行查询的数据$error = @errorIf Not IsArray($aOk) Then MsgBox(0, " error1.4.1", $error)$fhjglie = _EzMySql_Columns() ;返回结果列$fhjghang = _EzMySql_Rows() ;返回结果行_ArrayDisplay($aOk, "neirlie2 列中 包含 想 的数据 以二维数组的形式显示 (行):" & $fhjghang & "-" & $fhjglie & "(列) ")$aOk = _EzMySql_GetTable2d("SELECT * FROM qcjd WHERE idtime>50;") ;传递一个二维数组,其中包含列名和已执行查询的数据$error = @errorIf Not IsArray($aOk) Then MsgBox(0, " error1.4.2", $error)$fhjglie = _EzMySql_Columns() ;返回结果列$fhjghang = _EzMySql_Rows() ;返回结果行_ArrayDisplay($aOk, "zhengshu>50 的数据 以二维数组的形式显示 (行):" & $fhjghang & "-" & $fhjglie & "(列) ")EndIf ;控制代码

 

本文发布于:2024-01-31 04:16:02,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170664576325383.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:工具   电脑   信息   macip
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23