分类目录归档:VB程序

纯真IP数据库转MDB/MSSQL/MySQL

     在网站上经常用到根据客户IP显示城市的功能,如果只是简单的查询功能,直接用网上写好的纯真的IP数据库查询工具(如:114IP.NET)即可!如果想要该地区访客的统计什么的,网上下载的这些源码恐怕就无能为力了。这个时候就需要我们把纯真IP数据导入到数据库中。

    在Baidu上找了下,看到一篇通过导入纯真查询程序生成IP的数据库的文本格式到表A,然后再次用一个ASP文件来访问数据表A,把A表的IP转换到B表,这种方法我不是很赞成,而且有一定的局限行,比如要将纯真IP数据库转换成MDB格式,必须装Access,将纯真IP数据库转换成MSSQL必须安装MSSQL,转换城MYSQL必须安装MYSQL。即使安装了数据库还要安装IIS,对与新手操作可能有些麻烦了~

    我写了一个VBS的脚本,通过ADODB.Connection链接数据库,然后用ADODB保存到将纯真IP数据库转MDB数据库

Function Mappath(n)
	Mappath=Fso.getabsolutepathname(n)
End Function
 
Function IpToNum(Ip)
	IpNs=split(ip,".")
	IpN=IpNs(0)*S4+IpNs(1)*S3+IpNs(2)*S2+IpNs(3)*S1
	if err<>0 then IpN=0
	err.clear
	IpToNum=IpN
End Function
 
S1=256
S2=256*S1
S3=256*S2
S4=256*S3
on error resume next
Set Fso=CreateObject("Scripting.FileSystemObject")
Set Conn=CreateObject("ADODB.Connection")
Conn.open "provider=microsoft.jet.oledb.4.0;data source="&Mappath("dat.mdb")
 
Set Rs=CreateObject("ADODB.Recordset")
Rs.open "Select * from d",Conn,2,3
 
Set Fto=Fso.OpenTextFile(Mappath("dat.txt"))
Do while not Fto.atendofstream
	Rs.addnew
	Res=Split(Replace(Replace(Fto.Readline,"	",""),"  "," ")," ")
	Rs("s")=IpToNum(Res(0))
	Rs("e")=IpToNum(Res(1))
	Rs("c")=Res(2)
	Rs("h")=Res(3)
	Wscript.Echo "From "&Res(0)&" To "&Res(1)&" Updated."
	Rs.update
Loop
Rs.close

将纯真数据库转MSSQL数据库也很简单,只需改
Conn.open “driver={SQL Server}; server=(local);database= ;uid= ;pwd= “

将纯真数据库转MYSQL数据库,只需改
Conn.open “Driver={mysql};database=[yourdatabase];uid=[username];pwd=[yourpassword];option=16386;”

ColorMan颜色调试工具V1.0 VB6编写

启源 颜色调试工具
程序作者:苗启源
程序版本:V1.0
文件大小:12.1KB
下载地址:http://www.miaoqiyuan.cn/products/colorman.rar
程序截图:

直接打开软件界面

调试颜色界面

帮助界面

程序特点:
1.可以输入16进制颜色
2.可以通过滑动条调整某色(如红色)的值改变该颜色值,也可在滚动条后文本框直接输入
3.点击复制即可直接获取颜色的16进制值
4.右侧显示该色作为前景色,作为背景色,与反色搭配的预览效果
5.下方显示相似色的16进制值,并且背景为该色
6.下方显示相似色的反色16进制值,并且背景为该色

呵呵,这样说这个颜色调试工具有点像在下载站复制的了,实际上他是我在学校时写的,绝对原创

下面时它的部分代码,如果像要完整代码,可以在下面留言,或者Q我:77068320

Sub coloredit()
For i = 0 To 2
If Not IsNumeric(color(i).Text) Then color(i).Text = 0
If color(i).Text > 255 Then color(i).Text = 255
If color(i).Text < 0 Then color(i).Text = Abs(color(i).Text)
Next
a = color(0).Text
b = color(1).Text
c = color(2).Text
Text1(0).Text = a
HScroll1(0).Value = a
Text1(1).Text = b
HScroll1(1).Value = b
Text1(2).Text = c
HScroll1(2).Value = c
yulan(0).BackColor = RGB(a, b, c)
fan(1).BackColor = RGB(a, b, c)
fan(0).ForeColor = RGB(a, b, c)
qian.ForeColor = RGB(a, b, c)
banquan.ForeColor = RGB(a, b, c)
fan(1).ForeColor = RGB(255 - a, 255 - b, 255 - c)
fan(0).BackColor = RGB(255 - a, 255 - b, 255 - c)
If a < 16 Then e = "0" & Hex(a) Else e = Hex(a)
If b < 16 Then f = "0" & Hex(b) Else f = Hex(b)
If c < 16 Then g = "0" & Hex(c) Else g = Hex(c)
rgbok.Text = e & f & g
For i = 0 To 7
d = 12
a = color(0).Text - 3 * d + d * i
b = color(1).Text - 3 * d + d * i
c = color(2).Text - 3 * d + d * i
If a < 0 Then a = 0
If b < 0 Then b = 0
If c < 0 Then c = 0
If a > 255 Then a = 255
If b > 255 Then b = 255
If c > 255 Then c = 255
xiangsi(i).BackColor = RGB(a, b, c)
Text2(i).BackColor = RGB(255 - a, 255 - b, 255 - c)
If a < 16 Then e = "0" & Hex(a) Else e = Hex(a)
If b < 16 Then f = "0" & Hex(b) Else f = Hex(b)
If c < 16 Then g = "0" & Hex(c) Else g = Hex(c)
xiangsi(i).Text = "#" & e & f & g
If 255 - a < 16 Then e = "0" & Hex(255 - a) Else e = Hex(255 - a)
If 255 - b < 16 Then f = "0" & Hex(255 - b) Else f = Hex(255 - b)
If 255 - c < 16 Then g = "0" & Hex(255 - c) Else g = Hex(255 - c)
Text2(i).Text = "#" & e & f & g
Next
Timer2.Enabled = False
Timer2.Enabled = True
End Sub