vps下扩展vhd磁盘增加磁盘分区大小
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