gpt4 book ai didi

vbscript - 如何在 VBScript 中使用 GetObject

转载 作者:行者123 更新时间:2023-12-04 22:26:07 28 4
gpt4 key购买 nike

我对 VBScript 真的很陌生。所以这是我的代码,它读取一个文本文件并将一个对象附加到它:

Set objExcel = CreateObject("Scripting.FileSystemObject")
objExcel.CreateTextFile("C:\mine.txt")

现在谁能告诉我我应该如何使用 getObject(Pathname,[class])功能,因为我尝试了很多但没有任何效果?感谢致敬

最佳答案

可以找到 VBScript GetObject 文档 here .这是一个 VBScript 示例:

Set objExcelFile = GetObject("C:\Scripts\Test.xls")
WScript.Echo objExcelFile.Name
objExcelFile.Close

此代码将为您提供包含在 C:\Scripts\Test.xls 中的 Excel Workbook 对象。您可以使用 TypeName() 来确认:
Set objExcelFile = GetObject("C:\Scripts\Test.xls")
WScript.Echo objExcelFile.Name
WScript.Echo TypeName(objExcelFile)
objExcelFile.Close

输出将是:
test.xls
Workbook

如果指定的 Excel 工作簿不存在,脚本将返回错误。如果 Excel 实例已在运行,您可以使用此代码获取对它的引用:
Set objExcel = GetObject( , "Excel.Application")

For Each objWorkbook In objExcel.Workbooks
WScript.Echo objWorkbook.Name
Next

objExcel.Quit

注意“Excel.Application”前的逗号。该脚本获取对正在运行的 Excel 应用程序的引用,列出打开的工作簿名称并退出 Excel。如果没有 Excel 实例在运行,您将收到错误消息。这也是您不能使用 GetObject() 获取 Scripting.FileSystemObject 实例的原因 - 没有正在运行的实例。

如果已经在内存中运行了一个实例 og Scripting.FileSystemObject,您可以使用 GetObject。试试这个代码:
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFso1 = GetObject("", "Scripting.FileSystemObject")

WScript.Echo TypeName(objFso)
WScript.Echo TypeName(objFso1)

您可以看到您首先需要使用 CreateObject() 并且在 FileSystemObject 运行时可以获得对它的引用,但这没有多大意义,因为您已经有了对它的引用 (objFso)。因此,使用 CreateObject() 创建 FileSystemObject 的实例。

关于vbscript - 如何在 VBScript 中使用 GetObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1193952/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com