我想使用VBScript检查后台处理程序服务是否已启动,如果没有启动它,下面的代码检查服务状态,但我需要一些帮助来修改它,以便我可以检查它是否已启动.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colRunningServices = objWMIService.ExecQuery _
("Select * from Win32_Service")
For Each objService in colRunningServices
Wscript.Echo objService.DisplayName & VbTab & objService.State
Next
Run Code Online (Sandbox Code Playgroud)
非常感谢史蒂文
我正在开发一个用VBScript编写的Windows应用程序,我需要检查一个字符串是否包含任何非数字字符,特别是az.我意识到我可以使用InStr()函数和一个检查az的循环但这看起来很荒谬.我对VBScript的经验很少,所以我真的不知道该去哪里.
处理这种情况的好方法是什么?
今天我和一位同事就客户端脚本进行了讨论.JavaScript是我使用的唯一客户端脚本语言(也是我所知道的唯一一种),但她似乎认为你也可以在客户端使用VBScript.这是真的?
有谁知道如何识别传递给函数的对象(经典的asp/vbscript)实际上是一个字典对象与任何其他类型?
显然我可以这样做,isObject(myObj)但这并没有告诉我它是否是字典集合.
我有一个名为'Company'的类,它具有'CompanyName','CompanyCode'和'IsActive'等属性.这个类在VBScript中.我想在经典ASP中使用VBScript存储Company对象的集合.这是可能的,如果是的话,我该怎么做?
我有我正努力通过一个按钮来启动一个批处理文件,但是当我尝试启动批处理文件,它不运行基本HTA.当我按下按钮时,命令提示符窗口启动但不运行脚本.
这是代码的简单示例:
<HTML>
<HEAD>
<TITLE>Fix</TITLE>
</HEAD>
<BODY>
<FORM>
<INPUT TYPE="Run" NAME="Button" VALUE="Click">
<SCRIPT FOR="Button" EVENT="onClick" LANGUAGE="VBScript">
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "cmd.exe '.\example.bat'"
</SCRIPT>
</FORM>
</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)
如何从与HTA相同的工作目录(或子目录)中启动批处理文件?
谢谢
我正在研究这段代码
Dim strFirm,soNumber,strValues,arrStr,strCitrix,NewText,text
strFirm = "Gray"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("cloud.csv",1,True)
Do while not objTextFile.AtEndOfStream
arrStr = Split(objTextFile.ReadLine, ",")
If arrStr(0) = strFirm Then
soNumber = arrStr(1)
Exit Do
End If
Loop
objTextFile.Close
strCitrix = soNumber + 1
MsgBox "Cloud Client " & strFirm & " is now using " & strCitrix & " Citrix licenses."
NewText = Replace(soNumber, soNumber, strCitrix)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("cloud.csv",2,True)
objTextFile.Writeline NewText
objTextFile.Close
Run Code Online (Sandbox Code Playgroud)
但是当我运行代码时,替换会清除我文件中的所有文本,除了我正在编写的数字.
我想要它做的是保留所有其他文本,只更改一个指定的变量.
例
Client1,5
Client2,7 …Run Code Online (Sandbox Code Playgroud) 发送电子邮件时出错:"错误'80040211'"
这是我的代码的一个例子 -
Dim objMessage
Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = "Super Service Comment - "
objMessage.From = "someone@s.com"
objMessage.To = "someone1@s.zendesk.com;someone2@s.com"
objMessage.TextBody = "Name...."
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.office365.com" 'Name or IP of Remote SMTP Server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "someone4@s.com" 'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "******" 'Your password on the SMTP server
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 'Server port (typically 25)
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = true …Run Code Online (Sandbox Code Playgroud) 我添加日志记录功能,以一个经典的ASP应用程序时遇到困难得到的Request.QueryString和Request.ServerVariables当用户提交UNICODE查询正确显示.
例如 -
Response.write Request.QueryString
Run Code Online (Sandbox Code Playgroud)
strVar1=&strVar2=%E8%A1%8C%E9%9B%B2%E6%B5%81%E6%B0%B4&strVar3=blah1&strVar4=blah2
Response.write Request.ServerVariables("QUERY_STRING")
Run Code Online (Sandbox Code Playgroud)
strVar1=&strVar2=%E8%A1%8C%E9%9B%B2%E6%B5%81%E6%B0%B4&strVar3=blah1&strVar4=blah2
然而,如果我在Request.QueryString中指定一个UNICODE变量,它会正确打印:
Response.write Request.QueryString("strVar2")
Run Code Online (Sandbox Code Playgroud)
????
如何获取Request.QueryString或Request.ServerVariables("QUERY_STRING")以包含UNICODE?我在搜索和结果页面上都有以下内容,并且查询对数据库成功执行:
<%
Response.CodePage = 65001
Response.CharSet = "utf-8"
%>
Run Code Online (Sandbox Code Playgroud)
要回答bobince的问题,我想登录他们提交了哪些搜索字词和网页 - 如果有一个更好的方式来做到这一点,我所有的耳朵:
'Enable Logging: writes to MyDB.dbo.logging
'---------------------------------------------------------------------------------------------
Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType = adCmdText
cmd.ActiveConnection = objConn
strADName = UCase(Request.ServerVariables("AUTH_USER"))
Protocol = Request.ServerVariables("SERVER_PROTOCOL")
Protocol = Left(Protocol,InStr(Request.ServerVariables("SERVER_PROTOCOL"),"/")-1)
if Request.ServerVariables("SERVER_PORT") = "80" then
port = ""
else
port = ":" & Request.ServerVariables("SERVER_PORT")
end if
CurPageURL = lcase(Protocol) & "://" & Request.ServerVariables("SERVER_NAME") &_
port & Request.ServerVariables("SCRIPT_NAME") & "?" & …Run Code Online (Sandbox Code Playgroud) 我正在尝试在运行VBScript的Outlook中运行一条规则,该规则调用Slack.com Web服务并使用特定消息更新我的Slack频道之一。当前状态-我只希望它发布静态消息。将来的状态,我将尝试使用RegEx从电子邮件中解析出某些数据并将其发布到我的闲暇频道。
通过弗兰肯斯坦在网上找到的一些脚本,这就是我所拥有的(但效果不佳),希望有人可以提供帮助...
Function ProcessSend()
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.4.0")
Set oXMLDoc = CreateObject("MSXML2.DOMDocument")
strEnvelope = "payload={""channel"": ""#edt-error"", ""text"": ""This is posted to #edt-error.""}"
Call oXMLHTTP.Open("POST", "https://custom-slack-url-for-service-goes-here.com" & posFirm, False)
Call oXMLHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
Call oXMLHTTP.Send(strEnvelope)
Dim szResponse: szResponse = oXMLHTTP.responseText
Call oXMLDoc.LoadXML(szResponse)
If (oXMLDoc.parseError.ErrorCode <> 0) Then
'call msgbox("ERROR")
response = oXMLHTTP.responseText&" "&oXMLDoc.parseError.reason
'call msgbox(oXMLDoc.parseError.reason)
Else
response = oXMLDoc.getElementsByTagName("string")(0).ChildNodes(0).Text
End If
End Sub
Run Code Online (Sandbox Code Playgroud) vbscript ×10
asp-classic ×3
batch-file ×1
cdo.message ×1
cmd ×1
collections ×1
email ×1
hta ×1
javascript ×1
outlook ×1
regex ×1
replace ×1
search ×1
service ×1
slack-api ×1
string ×1
text ×1
unicode ×1