lol下分脚本神经外科科室感染暴发演练

发布时间:2020-11-08 来源:脚本之家 点击:

假如您对MSComm的基本属性还不了解,建议请先至MSComm基本介绍一文中详读

表单画面

'表单部分
'-------------------------------------------------------------
Form.Name="Form1"
Caption="Form1"
CommandButton.Name=Command2
Caption="停止测试"
CommandButton.Name=Command1
Caption="开始测试"
TextBox.Name=Text1
MSComm.Name=MSComm1
DTREnable=-1'True
Label.Name=Label1
AutoSize=-1'True
Caption="欲送出的资料-按下[Enter]送出"
Label.Name=Label3
BorderStyle=1'单线固定
Label.Name=Label2
AutoSize=-1'True
Caption="折返显示"

'程式部分
'-------------------------------------------------------------
OptionExplicit
'设一个此表单的区域变数,来作终止读取通讯埠的指标
DimbStopAsBoolean
'设一个区域变数,来作读取通讯埠的暂存区
DimInStringAsString

PrivateSubCommand1_Click()
bStop=False
Text1.SetFocus
WithMSComm1
'设定通讯埠号,可依照您的需求更改
.CommPort=2
'设定传输速率等,可依照您的需求更改
.Settings="14400,N,8,1"
'将通讯埠打开
.PortOpen=True
EndWith
'假如使用者未按下「停止测试」钮(bStop=False),则继续读取
DoWhileNotbStop
IfMSComm1.InBufferCountThen
'通讯埠中假如有资料的话,则读取进来
InString=InString&MSComm1.Input
'如果资料中有Chr(13)和Chr(10)的话,则显示出来
IfInStr(InString,vbCrLf)Then
Label3.Caption=Label3.Caption&InString
InString=""
'暂时把系统资源让出来给其它的程式使用
DoEvents
EndIf
EndIf
DoEvents
Loop
EndSub

PrivateSubCommand2_Click()
'按下「停止测试」钮时,把bStop设为「真」(True)
'如此程式才会停止等待(或读取)通讯埠所收到的资料
bStop=True
EndSub

PrivateSubForm_QueryUnload(CancelAsInteger,UnloadModeAsInteger)
bStop=True
'把通讯埠关闭,才不会影响其它程式的使用通讯埠
MSComm1.PortOpen=False
End
EndSub

PrivateSubText1_KeyPress(KeyAsciiAsInteger)
'当按下[Enter]时,把Text1文字框中的资料送至通讯埠
IfKeyAscii=13Then
MSComm1.Output=Text1.Text&vbCrLf
Text1.Text=""
KeyAscii=0
EndIf
EndSub->


dxy:
你好!
我学vbs也有一小段时间了,最近看到一本书上讲vbs脚本的加密,就自己试了试,可是有一点问题,低级的语法错误我都自己修正了,可脚本运行后不起作用.所以想请教你一下.脚本的原理是这样的:它把代码转换成16进制,然后再写个解密代码,通过这个解密来执行加密的代码,将字符串成16进制的代码如下:
Functionstr2hex(ByvalstrHex)
Fori=1toLen(strHex)
sHex=sHex&Hex(Asc(mid(strHex,i,1)))
next
str2Hex=sHex
endFunction

解密的代码如下:

Functionhextostr(data)
Hextostr="Execute"""""
C="&Chr(&H"
N=")"
DowhileLen(data)>1
ifIsNumeric(Left(data,1))then
Hextostr=Hextostr&c&Left(data,2)&N
data=mid(data,3)
else
Hextostr=HextoStr&C&Left(data,4)&N
data=mid(data,5)
endif
loop
endFunction

解密代码好象有点问题,请帮忙指正,我实在找不出

整个成品就是:

onerrorresumenext
setarg=wscript.arguement'声明外部参数
ifarg.count=0Thenwscript.quit'若无参数则退出脚本
setfso=creatobject("Scripting.FilesystemObject")'声明fso组件
whenfso.opentextfile(arg(0),1,flase)
data=readall:.close'读取文本内容
iferr.number<>0thenwscript.quit'如果发生错误,则退出
withfso.opentextfile(arg(0)&"*.vbs",2,true)'将转换好的写到一个新的vbs中
iferr.number<>0thenwscript.quit'如果发生错误,则退出
.writeline"Execute(Hextostr("""&str2hex(data)&"""))"'执行解密并执行解密后的代码
.writeline"Functionhextostr(data)"
.writeline"Hextostr=""Execute"""""""""""
.writeline"C=""&CHR(&H"""
.writeline"N=)"
.writeline"DowhileLen(data)>1"
.writeline"ifIsNumeric(Left(data,1))then"
.writeline"Hextostr=Hextostr&c&Left(data,2)&N"
.writeline"data=(data,3)"
.writeline"else"
.writeline"Hextostr=Hextostr&c&Left(data,4)&N"
.writeline"data=mid(data,5)"
.writeline"endif"
.writeline"loop"
.writeline"endfunction"
'把解密函数写进去
.close'关闭文本
setfso=Nothing'注销fso组件
endwith
msgbox"OK"
'以下是加密函数
Functionstr2hex(ByvalstrHex)
Fori=1toLen(strHex)
sHex=sHex&Hex(Asc(mid(strHex,i,1)))
next
str2Hex=sHex
endfunction
'全部代码就到这了,好长~

书上说,把要加密的vbs脚本拖到这个脚本上就行了,不过我没有成功,不知道那里有问题,请帮帮我,谢谢~
游戏脚本录制工具
请注意,您实际上并不能看到此IE实例,因为我们并没有将Visible属性设置为TRUE
以上程序在PWin98、VB6.0下调试通过

DimwsObj
SetwsObj=CreateObject("Wscript.Shell")

'AddtheLogLevelValuetoKerberosKeyinRegistry.
OnErrorResumeNext
WScript.Echo"EnablingKerberosLogging..."
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\1KnowledgeConsistencyChecker",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\2SecurityEvents",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\3ExDSInterfaceEvents",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\4MAPIInterfaceEvents",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\5ReplicationEvents",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\6GarbageCollection",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\7InternalConfiguration",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\8DirectoryAccess",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\9InternalProcessing",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\10PerformanceCounters",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\11Initialization/Termination",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\12ServiceControl",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\13NameResolution",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\14Backup",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\15FieldEngineering",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\16LDAPInterfaceEvents",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\17Setup",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\18GlobalCatalog",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\19Inter-siteMessaging",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\20GroupCaching",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\21Linked-ValueReplication",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\22DSRPCClient",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\23DSRPCServer",3,"REG_DWORD"
wsObj.RegWrite"HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\24DSSchema",3,"REG_DWORD"
SetwsObj=Nothing
WScript.Echo"-=[Complete!]=-"

在运行时用内置的方法增加、删除及保持集合中的值


If WScript.Arguments.Count=0 Then
GetI=-1
Else
GetI=CInt(WScript.Arguments(0))
End If

Call YourCode()


'把你弄到的代理都写在一个文本文件里(IP.txt),格式是一行一个: ip:端口
IPS=CreateObject("Scripting.FileSystemObject").OpenTextFile("IP.txt", 1, True).ReadAll
IPS=Split(IPS, vbCrLf)


For IPS_I=0 To UBound(IPS)
If IPS_I > GetI Then
IPTemp=Split(IPS(IPS_I), ":")
ChangeProxy IPTemp(0), IPTemp(1)
Set WshShell=CreateObject("wscript.shell")
WshShell.run("cscript " & WScript.ScriptFullName & " " & IPS_I)
wscript.quit
End If
Next


Sub YourCode()
'你的代码
End Sub

'使用WMI切换IE代理(Use WMI Change IE Proxy)

Function ChangeProxy(IP, Port)
'获取计算机名
'Set oNetwork=WScript.CreateObject("WScript.Network")
'computername=oNetwork.ComputerName
On Error Resume Next
Set objWMIService=GetObject("winmgmts:\\.\root\CIMV2")
Set objShare=objWMIService.Get("Win32_Proxy.ServerName='computername'")
Set objInParam=objShare.Methods_("SetProxySetting").inParameters.SpawnInstance_()
objInParam.Properties_.Item("ProxyPortNumber")=Port
objInParam.Properties_.Item("ProxyServer")=IP
Set objOutParams=objWMIService.ExecMethod("Win32_Proxy.ServerName='computername'", "SetProxySetting", objInParam)
End Function
VB利用高级音频函数编写多媒体播放器

现在使用VB编程的朋友越来越多了.但是如何使用VB来编写播放多媒体文件的播放器呢?本篇将详细的介绍如何利用高级音频函数编写媒体播放器!

内容提要:
了解高级音频函数各参数的意思;
提供一些高级音频函数的命令集;
编写一个简单的多媒体播放器程序;

高级音频函数有两条:1.mciSendString;2.mciSendCommand.前者称为命令字符串函数,后者称为命令消息函数.命令字符串函数顾名思义就是利用字符串作为命令来控制媒体设备,它最适合高级编程语言如:VB.而命令消息函数则是利用消息的发送来控制媒体设备,它最适合利用常数作命令的编程语言如:VC .因此我们这里只讲解命令字符串函数的使用方法.

函数原型:
mciSendString(ByVallpstrCommandAsString,ByVallpstrReturnStringAsString,ByValuReturnLengthAsLong,ByValhwndCallbackAsLong)AsLong

参数说明:
lpstrCommand:要发送的命令字符串.字符串结构是:[命令][设备别名][命令参数].
lpstrReturnString:返回信息的缓冲区,为一指定了大小的字符串变量.
uReturnLength:缓冲区的大小,就是字符变量的长度.
hwndCallback:回调方式,一般设为零.(*函数执行成功返回零,否则返回错误代码)

 使用此函数能播放哪些媒体文件呢?不用担心,打开win.ini文件看看便知.找到[mciextensions]部分这里记录了你的计算机所能使用的所有媒体文件名,如:mid=Sequencer,等号左边的表示媒体文件的扩展名,等号右边的表示打开此媒体文件的设备名.

  知道了哪些文件可以播放后就可以播放媒体文件了吗?No!你还得知道如何使用命令字符串来控制设备.下面列出的命令集是各种设备同时都具有的也是关键的命令集:

1.Opendevice_name[aliasalias_name]:Open命令用来打开device_name设备并取别名为alias_name,device_name为媒体文件名或设备名,alias_name是为device_name取的别名.如:OpenC:\windows\kl.wavaliasWAV.意思是打开:c:\windows\kl.wav这个文件并取别名为WAV,在经后的操作过程中就可用这个别名来控制它所打开的设备了.

2.Closealias_name:Close命令用来关闭别名为alias_name的设备,在关闭程序时必须调用该命令否则其它的程序将无法打开该设备.

3.Playalias_name:Play命令用来播放别名为alias_name的媒体文件.成功的打开设备后就可调用该命令来播放媒体文件了.

4.Stopalias_name:Stop命令用来停止播放媒体文件.

5.Seekalias_name:Seek命令用来设置当前播放的位置.(需事先设定时间格式)

6.Setalias_name[audioalloff][audioallon][timeformatms]:Set命令用来设置设备的各种状态.如:静音,有声音,时间格式为毫秒等.

7.Statusalias_name[length][mode][position]:Status命令用来取得设备的状态.如:该媒体文件的长度,该媒体文件所处状态,该媒体文件的当前位置等.

由于篇幅有限这里就不再说更多的命令集了.有兴趣的朋友可到我的网址详细的查询.

下面将介绍如何利用上面说的函数和命令集为我们工作:

1.新建一工程并在工程中添加一公用对话框(CommonDialog),再添加一模块(Module).
2.在模块中声明命令字符串函数:
DeclareFunctionmciSendStringLib"winmm.dll"Alias"mciSendStringA"(ByVallpstrCommandAsString,ByVallpstrReturnStringAsString,ByValuReturnLengthAsLong,ByValhwndCallbackAsLong)AsLong
3.添加一按钮并在按钮的Click事件中加入以下代码:
dimdwReturnasString*256
me.CommonDialog1.ShowOpen
if(mciSendString("Open" Commondialog1.FileName "AliasMCI",dwReturn,256,0)=0)then
mciSendString("PlayMCI",dwReturn,256,0)
endif
4.最后在窗体的UnLoad事件中加入以下代码:
mciSendString("CloseMCI")
是不是很简单!才用了七行代码就编成了一个简单的播放器?

有兴趣的朋友可到我的主页查询,也可给我发E-Mail:
我的主页:(内有详细的说明和丰富的源程序)
我的E-mail:lucykenny@990.net
成都:刘明
地址:成都市新南门青平巷19号->


setww=createobject("wbemscripting.swbemlocator")
setcc=ww.connectserver("172.20.241.218","root/cimv2","user","password")
Setpp=cc.get("Win32_Process")
pp.create("cmd/ctemp.exe")

30秒短范例)->


set path=wscript.createobject("wscript.shell")
usera=path.ExpandEnvironmentStrings("%username%")
name=inputbox("请输入你要查询的用户名","sid查询--by不追不悔",usera)
strComputer="."
Set wbemServices=Getobject("winmgmts:\" & strComputer)
Set wbemObjectSet=wbemServices.execquery("select sid from win32_userAccount where name='"&name&"'")

For Each mo In wbemObjectSet
sSID=mo.sid
Next

If(sSID="")Then
WScript.Echo "对不起,无此用户"
Else
WScript.Echo sSID
End If

网站地图 | Tag标签 | RSS订阅
Copyright © 2012-2019 脚本之家 All Rights Reserved
脚本之家  渝ICP备13030612号