我是VBScript的新手,无法弄清楚为什么我的代码会出现Object required错误.现在很简单,我刚刚开始:
<% set fs=Server.CreateObject("Scripting.FileSystemObject") Dim dateandtime On Error Resume Next set dateandtime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss") If Err <> 0 Then ' File operation(s) Failed,handle the error response.write(Err.Description) End If %>
为什么我无法设置DateTime?我已经设置了FileSystemObject,以便稍后在代码FYI中使用.我只是把它全部放在这里,所以你看到我到底有什么.我认为它是一个简单的语法,但我似乎无法在任何地方找到答案.谢谢你的帮助!
解决方法
第一个错误是在将非对象分配给变量时使用Set. “相关”列表
“Object required” when using Set in an assignment中的最后一个条目处理它.
>> Set dt = "a string" >> Error Number: 424 Error Description: Object required [because Set wants an object to assign]
没有设置,没问题:
>> dt = "a string" >> WScript.Echo dt >> a string
删除Set将揭示下一个问题:除非你定义了一个合适的类和一个名为’DateTime’的实例,否则DateTime.Now.ToString(“yyyy / MM / dd HH:mm:ss”)将会失败错误424.
>> dt = Nix.Now.ToString("") >> Error Number: 424 Error Description: Object required [to use its .Now member]
在这里搜索有关在VBScript中格式化日期的方法. (首次点击“[vbscript]格式日期”:date format in VBS)
应删除.Write调用中的();它们不是参数列表(),而是“每个值传递给我”().请参阅this answer并点击Eric Lippert的文章链接.