我希望使用特定的密钥和IV值在VBScript中使用Rijndael/AES加密一些数据.有没有好的功能库或COM组件可以使用?
我看着CAPICOM ; 它只允许使用密码,并且不允许设置特定的密钥和IV值.
经典ASP,VBScript上下文.
包括这个Microsoft在内的很多文章都说你不能使用FileSystemObject来读取Unicode文件.
我曾经遇到过这个问题,所以转而使用ADODB.Stream ,而不是使用这里的ReadText示例,而不是使用FileSystemObject.OpenTextFile(它接受一个指示是否以unicode打开文件的最终参数,但实际上并不是工作).
但是,ADODB.Stream在尝试读取UNC文件共享上的文件(与权限相关的问题)时会导致痛苦.所以,调查这个,我偶然发现了以下方法:a)使用unicode文件,b)跨UNC文件共享:
dim fso, file, stream
set fso = Server.CreateObject("Scripting.FileSystemObject")
set file = fso.GetFile("\\SomeServer\Somefile.txt")
set stream = file.OpenAsTextStream(ForReading,-1) '-1 = unicode
Run Code Online (Sandbox Code Playgroud)
这是使用FSO读取unicode文件而没有任何明显的问题,所以我很困惑所有的引用,包括MS,说你不能使用FSO来读取unicode文件.
有没有其他人使用这种方法来读取unicode文件?我有什么隐藏的陷阱,或者你真的可以使用FSO读取unicode文件吗?
在Excel中使用visual basic,我可以使用DECLARE关键字声明WinAPI函数 - 例如
Declare Function SetLocaleInfo Lib "kernel32" Alias "SetLocaleInfoA" ( _
ByVal Locale As Long,
ByVal LCType As Long,
ByVal lpLCData As String
) As Boolean
Run Code Online (Sandbox Code Playgroud)
但是,在*.VBS文件中使用此语法时,它会因编译错误而失败.
任何人都可以告诉我从*.VBS文件运行WinAPI函数需要做什么?
我需要将以下行转换为JavaScript:
cOrderNumList = frmSearch.OrderNumList.Value
cOrderNumList = Replace(cOrderNumList, Chr(10), "")
aOrderNumList = Split(cOrderNumList,",")
Run Code Online (Sandbox Code Playgroud)
什么是JavaScript的等价物 Chr(10)
我有以下代码:
Function filejson(json)
Dim objStream, strData
Set objStream = CreateObject("ADODB.Stream")
objStream.CharSet = "utf-8"
objStream.Open
objStream.LoadFromFile(json)
strData = objStream.ReadText()
filejson = strData
End Function
Function http2json(url)
Set http = CreateObject("Microsoft.XmlHttp")
http.open "GET", url, FALSE
http.send "" '<------- Line 13
http2json=http.responseText
End Function
Function str2json(json,value)
Set scriptControl = CreateObject("MSScriptControl.ScriptControl")
scriptControl.Language = "JScript"
scriptControl.AddCode("x="& json & ";")
str2json= scriptControl.Eval( "x"& value )
End Function
Function get_json_from_file(json,value)
get_json_from_file=str2json(filejson(json),value)
End Function
Function get_json_from_http(url,value)
get_json_from_http=str2json(http2json(url),value)
End Function
Function save_json_from_http(url,loc)
Set fso = CreateObject("Scripting.FileSystemObject")
fullpath = fso.GetAbsolutePathName(loc) …Run Code Online (Sandbox Code Playgroud) 在使用Bourne Shell,Perl,Python和Ruby等语言在Unix/Linux开源世界编写经验之后,我现在发现自己需要做一些Windows XP管理脚本.遗留环境似乎是Windows脚本宿主(WSH),它可以使用各种脚本语言,但主要语言是VBScript,并且基于COM对象.但是,未来似乎是Windows PowerShell,它基于.NET.
自从20世纪70年代Applesoft以来我没有做过Basic,所以我并不热衷于学习VBScript,尽管我学到了足够的知识来编写一个小脚本来安装网络驱动器.如果我要花时间真正学习这一点,我倾向于在.NET PowerShell环境中投入时间,如果真的是未来.几年前我做过一些C#Windows Forms编程,所以我对.NET有一些了解,这也使得PowerShell具有吸引力.
了解到没有人有一个水晶球可以预测微软的未来,我想听听任何PowerShell用户认为这是值得的,或者是否有人知道PowerShell的严重缺点,并建议我远离从中.
更新:我最终使用WSH/VBScript作为我在用户的Windows XP工作站上作为启动脚本安装的特定脚本.我所要做的就是将它复制到他们的Startup文件夹,然后我就完成了.但是,我只学到了足够的WSH才能完成这项工作.我很高兴看到PowerShell是未来,当我有更复杂的脚本任务时,我将转向PowerShell.
有一个配置的WCF服务:
<services>
<service name="MyService" behaviorConfiguration="MyServiceBehavior">
<endpoint
binding="basicHttpBinding"
contract="IMyService" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8001/MyService" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceBehavior">
<serviceMetadata httpGetEnabled="True" />
</behavior>
</serviceBehaviors>
</behaviors>
Run Code Online (Sandbox Code Playgroud)
这个脚本应该调用它:
Option Explicit
Dim soapClient
Dim serviceUri
Dim serviceName
Dim portName
Dim result
serviceUri = "http://localhost:8001/MyService"
serviceName = "MyService"
portName = "BasicHttpBinding_IMyService"
Set soapClient = CreateObject("MSSOAP.soapClient")
soapClient.ClientProperty("ServerHTTPRequest") = True
soapClient.mssoapinit serviceUri & "?WSDL", serviceName, portName
Run Code Online (Sandbox Code Playgroud)
运行脚本时出现此错误:
客户端:WSDLReader:分析WSDL文件失败HRESULT = 0x8 0004005 - WSDLReader:服务初始化失败HRESULT = 0x80004005 - WSDL服务:服务端口初始化服务MyService失败HRESULT = 0x80004005 - WSDLPort:分析端口BasicHttpBinding_IMyService的绑定信息失败HRESULT = 0x80004005 …
如何使用vbscript终止进程.请注意,我需要终止在Windows 64位环境下运行的进程作为本机64(不使用select*from win_32_Process)
谢谢,
当我运行以下脚本时,我在第54行(最后一行)收到"需要对象"错误.怎么了?
Option Explicit
Dim cmdString, g_strHostFile, filepath, flexnetpath, importcmd, dtmToday, dtmYesterday, dtmFileDate, param1, param2, param3, i4path, objFSO, objTextStream, g_strComputer, WshShell
'Initialize global constants and variables.
Const FOR_READING = 1
g_strHostFile = "D:\dataimports\LUM_servers.txt"
i4path = "C:\IFOR\WIN\BIN\i4blt.exe"
filepath = "D:\DataImports\"
flexnetpath = "C:\Program Files (x86)\Flexnet\Manager\Admin"
importcmd = flexnetpath & "flexnet bulkimport -uadmin -padmin -f" & filepath
dtmToday = Date()
dtmYesterday = Date() - 1
dtmFileDate = Year(Date) & padDate(Month(Date)) & padDate(Day(Date))
param1 = "-r1 -e2,4 -n "
param2 = " -v 'Dassault …Run Code Online (Sandbox Code Playgroud) 我正在尝试用左边的0填充一个字符串.输出字符串的长度应为7.这是我的代码:
inputstr = "38"
in = string(7 - Len(inputStr),0) & inputStr
msgbox in
Run Code Online (Sandbox Code Playgroud)
我收到错误预期声明请帮帮我谢谢
vbscript ×10
asp-classic ×2
scripting ×2
aes ×1
interop ×1
javascript ×1
msxml ×1
msxml3 ×1
powershell ×1
rfc2898 ×1
rijndael ×1
wcf ×1
winapi ×1
windows-xp ×1
wsh ×1