存档
以前写过一篇PushWeb 采集站点信息发布的最佳方案(http://www.miaoqiyuan.cn/p/pushweb),用了很久,现在数据量大了,导入速度很慢(主要原因是导入一条记录,自动修复一次数据),在此,我修改了一下代码,暂且算是升级到1.01吧:
‘pushWeb 1.01
‘刷新时间
const pushWeb_flush_Time=600000
‘数据库路径
const pushWeb_dbPath="D:\WebDesign\Products\pushWeb\DB\PushWebDB.mdb"
function pushWeb()
on error resume next
dim conn,rs,push_id,push_webid,push_sql
dim web_db,web_name
dim push_Arr,push_str
set conn=createobject("ADODB.connection")
conn.open "provider=microsoft.jet.oledb.4.0;data source="&pushWeb_dbPath
set rs=conn.execute("select push_webid from push")
if rs.eof then
push_id=0
wscript.echo "没有更新,"&pushWeb_flush_Time/1000&"秒后再检查…"
else
push_webid=rs(0)
end if
rs.close
set rs=nothing
if push_webid<>0 then
‘载入站点信息
set rs=conn.execute("select web_name,web_db from web where web_id="&push_webid)
if not rs.eof then
web_name=rs(0)
web_db=rs(1)
else
wscript.echo "错误的任务请求,"&pushWeb_flush_Time/1000&"秒后再检查…"
exit function
end if
rs.close
set rs=nothing
‘如果是合法的站点
if web_db<>"" and web_name<>"" then
wscript.echo "找到一个任务[站点名="&web_name&"],导入中…"
‘创建新的连接对象
set newConn=CreateObject("ADODB.Connection")
newConn.open web_db
set rs=conn.execute("select push_sql from push where push_webid="&push_webid)
do while not rs.eof
push_sql=rs(0)
push_Arr=split(push_sql,vbCrlf)
for [...]
CMDPad 批处理辅助工具
通过YQYStudio助手功能,即使不懂批处理命令,仅需点几下鼠标,也可以写出功能强大的批处理工具。
复杂的逻辑命令,点击即可获得简单的使用说明。
可以通过菜单或者快捷键(Ctrl+E)关闭源奇缘助手,通过(Ctrl+Y)开启源奇缘助手
可以通过菜单修改背景颜色,字体颜色,字体大小,文字字体。
通过批处理辅助(Alt+C)即可打开批处理辅助菜单,可以通过简单的选择菜单,即可生成相应的批处理命令。
下载CMDPad 批处理辅助工具
CMDPad 批处理辅助工具文档
CMDPad 批处理辅助工具源码
通过Tencent://Message/可以打开QQ和朋友聊天,一直对他挺好奇?到底是什么原理?
今天,我在网上找了一下TENCENT协议的实现原理,还真找到了;文章请访问:http://hi.baidu.com/kmiaoer/blog/item/799fd388ec403691a5c2723b.html
原来是在注册表中修改的。
知道了原理就好办了,我们也来写一个
定义一个miaoqiyuan协议。实现什么功能的,哦,多了,miaoqiyuan:你好。这样来实现弹出对话框,弹出你好。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\miaoqiyuan]
@="miaoqiyuan Protocol"
"URL Protocol"="D:\\miaoqiyuan\\miaoqiyuan.exe"
[HKEY_CLASSES_ROOT\Smiaoqiyuan\DefaultIcon]
@="D:\\miaoqiyuan\\miaoqiyuan.exe,0"
[HKEY_CLASSES_ROOT\miaoqiyuan\shell]
[HKEY_CLASSES_ROOT\miaoqiyuan\shell\open]
[HKEY_CLASSES_ROOT\miaoqiyuan\shell\open\command]
@=\"D:\\miaoqiyuan\\miaoqiyuan.exe\" %1"
这样,通过miaoqiyuan:链接的文件都可以通过miaoqiyuan.exe打开了
下面说说怎样来弹出对话框。
在VB中新建一个标准的EXE程序,新建一个按钮,改名为Showmsg,双击,输入END(点击退出程序)
然后添加
Private Sub Form_Load()
showmsg.Caption = Replace(Command(), "miaoqiyuan:", "")
End Sub
这样就可以通过输入miaoqiyuan:1234弹出1234的警告了
这样就可用通过一个自定义的协议来执行程序了
在网站上经常用到根据客户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;”
启源 颜色调试工具
程序作者:苗启源
程序版本:V1.0
文件大小:12.1KB
下载地址:http://www.miaoqiyuan.cn/products/colorman.rar