首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VBScript和CreateObject问题

VBScript和CreateObject问题
EN

Stack Overflow用户
提问于 2012-01-19 02:04:51
回答 1查看 2.8K关注 0票数 1

如果是关于VBScript的,我并不是真正的实验,但我有机会通过论坛阅读了很多东西,实际上昨天我帮助某人检查了他的脚本不工作的原因,并为他找到了解决方案。所以我在本地修改了这个脚本,并以我想要的方式完成了它,它工作了,但在另一个人的一端,其中一个对象无法初始化。

被牵连的那行是这样的

代码语言:javascript
复制
    Set WshNet = WScript.CreateObject("WScript.Network")

另一个人被告知删除WScript的东西,它似乎在提问端起作用。

我最初认为这可能与在我这端使用Wscript.exe和在那一端使用CScript.exe (我的假设)有关,但我在命令行中检查了这一点,它仍然有效。所以,我想知道和理解的是为什么会发生这种情况?为什么调用CreateObject的脚本可以与“WScript”一起使用。但在另一个系统上,您需要删除那个“WScript”。让它继续工作吗?感谢您的时间和答案。;)致以最良好的问候。

EN

回答 1

Stack Overflow用户

发布于 2012-01-19 02:44:43

"WScript.CreateObject“或"WScript.Echo”中的"WScript“是c|wscript.exe脚本主机提供的(对象的名称)。如果你在其他主机(例如ie或mshta)下运行VBScript,那么就没有这样的对象。

该语言本身有一个(不同!,详情请参阅文档) "CreateObject“函数,可在所有VBScripts主机下/中使用。所以为了安全起见,请使用简单的"CreateObject“。

"WScript.Network“中的WScript是COM对象的ProgId的一部分,该对象可能安装在您的计算机上(也可能没有安装)。那些“名字”为" WScript“的COM对象与c|wscript.exe提供的WScript对象完全不同。

所以我的第一个假设是:“某人”执行了/in ie或mshta下的代码,并通过删除“WScript”解决了问题。从"WScript.CreateObject",也就是通过回退到VBScript自己的CreateObject。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8915052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档