淘宝省市县联动代码纯js剥离

淘宝省市县联动代码纯js剥离,不需要它以前的框架。这个代码是目前最全高效的了

vps下扩展vhd磁盘增加磁盘分区大小

vhd文件要改大小,停止后直接在hyper-v磁盘编辑中就可以。比如磁盘中的某个区,c盘想扩大小呢。
进入dos下运行 diskpart 命令后,稍等片刻即可用命令操作了。
list volume
select volume 0
extend [size=20mb]
上面的0就是指的c盘,在你list时自己看得到。扩展时可加参数size,若不加则扩展所有剩余
暂没法收缩某个分区的大小,使用这个功能的前提是磁盘有未分配空间才行。

, , , , ,

vbs以post方式上传图片的源码

调用方法如下,详细代码见内页

Dim UploadData
Set UploadData = New XMLUpload
UploadData.Charset = "utf-8"
UploadData.AddForm "content", "Hello world" '文本域的名称和内容
UploadData.AddFile "file", "test.jpg", "image/jpg", "test.jpg"
WScript.Echo UploadData.Upload("http://example.com/takeupload.php")
Set UploadData = Nothing

, , ,

asp检查文件编码是不是utf8

asp检查文件编码是不是utf8,vbs检查文件编码,比网上流行的要准确。支持没有BOM头的文件,大多数utf8也没有这个

Function read(path)
    '将Byte()数组转成String字符串
    Dim ado, a(), i, n
    Set ado = CreateObject("ADODB.Stream")
    ado.Type = 1 : ado.Open
    ado.LoadFromFile path
    n = ado.Size - 1
    ReDim a(n)
    For i = 0 To n
        a(i) = ChrW(AscB(ado.Read(1)))
    Next
    read = Join(a, "")
End Function
Function is_valid_utf8(ByRef input) 'ByRef以提高效率
    Dim s, re
    Set re = New Regexp
    s = "[\xC0-\xDF]([^\x80-\xBF]|$)"
    s = s & "|[\xE0-\xEF].{0,1}([^\x80-\xBF]|$)"
    s = s & "|[\xF0-\xF7].{0,2}([^\x80-\xBF]|$)"
    s = s & "|[\xF8-\xFB].{0,3}([^\x80-\xBF]|$)"
    s = s & "|[\xFC-\xFD].{0,4}([^\x80-\xBF]|$)"
    s = s & "|[\xFE-\xFE].{0,5}([^\x80-\xBF]|$)"
    s = s & "|[\x00-\x7F][\x80-\xBF]"
    s = s & "|[\xC0-\xDF].[\x80-\xBF]"
    s = s & "|[\xE0-\xEF]..[\x80-\xBF]"
    s = s & "|[\xF0-\xF7]...[\x80-\xBF]"
    s = s & "|[\xF8-\xFB]....[\x80-\xBF]"
    s = s & "|[\xFC-\xFD].....[\x80-\xBF]"
    s = s & "|[\xFE-\xFE]......[\x80-\xBF]"
    s = s & "|^[\x80-\xBF]"
    re.Pattern = s
    is_valid_utf8 = (Not re.Test(input))
End Function

, , , , ,

vbs获取硬盘序列号C磁盘的序号

strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_DiskDrive where status='ok' and index=0",,48) 
For Each objItem in colItems 
    Wscript.Echo "SerialNumber: " & objItem.SerialNumber
Next
 
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_LogicalDisk WHERE status='ok' and Caption = 'C:'",,48) 
For Each objItem in colItems 
    Wscript.Echo "VolumeSerialNumber: " & objItem.VolumeSerialNumber
Next

, , , ,

vbs获取本机外网ip

Function getmyip()
	Dim ie,regEx
	Set ie=CreateObject("internetexplorer.application")
	ie.navigate("http://www.ip138.com/ip2city.asp")
	ie.Visible=False
	While ie.busy Or ie.readystate <> 4
	Wend
	Set regEx = New RegExp 
	regEx.Pattern ="\d.*\d"
	Set Matches = regEx.Execute(ie.document.body.innerhtml)
	ie.Quit : Set ie=Nothing
	For Each Match in Matches
		getmyip=Match.Value
	Next
End Function
 
Function getmyip()
	Dim http,regEx
	Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
    http.setTimeouts 10000, 10000, 10000, 10000
    http.Open "get","http://www.ip138.com/ip2city.asp", False
    http.Send
    If http.Status="200" Then
    	Set regEx = New RegExp 
		regEx.Pattern ="\[(.*?)\]"
		Set Matches = regEx.Execute(http.ResponseText)
		For Each Match in Matches
			getmyip=Match.Submatches(0)
		Next
	End If
	Set http=Nothing 
End Function 
 
'另外再说下怎么使用wmi获取本地网卡信息
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_NetworkAdapterConfiguration where IPEnabled=true and MACAddress<>''",,48) 
For Each objItem in colItems
	WScript.Echo objitem.IPAddress(0)	'IP地址
	WScript.Echo objitem.IPSubnet(0)	'子网掩码
	WScript.Echo objitem.DNSServerSearchOrder(0)	'默认DNS
	WScript.Echo objitem.DNSServerSearchOrder(1)	'备用DNS
	WScript.Echo objitem.DefaultIPGateway(0)		'网关
	WScript.Echo objitem.DNSHostName	'计算机名
	WScript.Echo objitem.Description	'网卡名字
	WScript.Echo objitem.MACAddress		'MAC地址
next

, , , ,

Asp.Net防提权设置

(转载)几天前,一个朋友让我帮他搞下服务器安全,结果发现服务器上都是Asp.Net的站,不过放旁注做的不错,只不过能执行命令,对服务器不安全。直到有一天,我入侵一个国外的网站,发现死活执行不了命令,想看看他安全怎么做的,我也学学,之后就下载回配置文件了,回去一分析,发现除了授权级别和授权文件被改了,其他倒没什么。今天研究出来是怎么防止提权的。
先打开:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\web.config之后找到<trust level="Full" originUrl="" /> 改为 <trust level="High" originUrl="" />然后打开C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\web_hightrust.config
里面有一句:<securityclass Name="RegistryPermission" Description="System.Security.Permissions.RegistryPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089″/>把这句删掉,就可以防止读取注册表
这样就可以防止执行被命令 而且 IISSpy 以及读取注册表都无法了。并且经过测试,在目录里新建个Web.Config也是无法绕过这个设置的。

, ,

xmlhttp支持https调用

原来我还以为xmlhttp不支持https的协议,今天测试了一下完全可以
简直是太好了。强大啊。如果你还不知道那个phpCookie的功能证明你不爱来本站

Dim phpCookie
phpCookie	="PHPSESSID=r041shr3outvnhlh87ukrmax11"
loginurl	="http://www.dnspod.cn/Auth/Login"
postdata	="login-email=XXXXX&login-password=XXXXXX"
testurl	="https://www.dnspod.cn/vip/Charge"
WScript.Echo xmlHttp(testurl,"")
Function xmlHttp(byval urlStr,byval pData)
	Dim http,pType:set http=CreateObject("WinHttp.WinHttpRequest.5.1")
	pType="GET" : If pData<>"" Then pType="POST"
	http.SetTimeouts 10000,10000,10000,10000
	http.Option(6)=0
	http.open pType,urlStr,False
	If postype="POST" Then http.setRequestHeader "CONTENT-TYPE","application/x-www-form-urlencoded"
	If phpCookie<>"" Then http.SetRequestHeader "Cookie",phpCookie
	http.Send (pData)
	xmlHttp = http.ResponseText
	Set http=Nothing
End Function

, ,

vbs操作iis isapi筛选器

'添加一个DLL筛选
	Set objFilters = GetObject("IIS://LocalHost/W3SVC/" & siteid & "/Filters")
	LoadOrder = objFilters.FilterLoadOrder
	Set objFilter = objFilters.Create("IIsFilter",strName)
	objFilter.FilterDescription = strName
	objFilter.FilterPath = dllPath
	objFilter.FilterEnabled = True
	objFilter.SetInfo
	Set objFilter=Nothing
	If LoadOrder<>"" Then LoadOrder=LoadOrder & ","
	LoadOrder = LoadOrder & strName
	objFilters.FilterLoadOrder = LoadOrder
	objFilters.SetInfo
	Set objFilters=Nothing
'删除一个站点的所有筛选
	Set objFilters = GetObject("IIS://LocalHost/W3SVC/" & siteid & "/Filters")
	For Each obj In objFilters
		objFilters.Delete "IIsFilter",obj.name
		objFilters.SetInfo
	Next
	objFilters.FilterLoadOrder=""
	objFilters.SetInfo
	Set objFilters=Nothing

, , , , ,

vbs读取和修改excel文件

Set xlapp= CreateObject("Excel.Application") '调用office组件
Set xlbook = xlapp.Workbooks.Open(xlspath)   '打开一个XLS文件
Set xlsheet = xlbook.Sheets(1)'选择表对象
Msgbox xlsheet.Range("A8").Value '//得到单元格A8的值
xlsheet.Range("A8").Value="hello world" '//改写单元格A8的值
xlsheet.Rows(cur).Delete'删除第cur这一行,注意是立即的,比如删3,下行4的行号会变成3。注意减cur
xlbook.save '保存文件
Set xlsheet=Nothing '关闭表
xlbook.Close '关闭文件
Set xlbook=Nothing '释放
xlapp.Quit '关闭组件
set xlapp = Nothing '释放组件
WScript.Echo "成功,一定要注意关闭不成功会意外,而且进程会始终保持"
 
'下面是一些对单元格设置的属性
.NumberFormatLocal = "@"
.Font.Bold = True
.Font.Size = 12
.Interior.ColorIndex = 37
.HorizontalAlignment = 3 '居中
.font.ColorIndex=2
'获取列数 xlsheet.fields.count
'获取行数 xlsheet.RecordCount

, , ,