如何在VBScript中写入文本文件而不重写?

如何在VBScript中写入文本文件而不重写?,vbscript,Vbscript,我目前正在编写一个脚本,从计算机解析ServiceTage、Computername和Username,并将其输出到共享上的文本文件,但它似乎总是覆盖其中的数据,而不是添加到其中 代码如下: 'Get Dell Service Tag Info set ProSet = GetObject("winmgmts:").InstancesOf("Win32_BIOS") Set ProSet1 = GetObject("winmgmts:").InstancesOf("Win32_SystemEnc

我目前正在编写一个脚本,从计算机解析ServiceTage、Computername和Username,并将其输出到共享上的文本文件,但它似乎总是覆盖其中的数据,而不是添加到其中

代码如下:

'Get Dell Service Tag Info
set ProSet = GetObject("winmgmts:").InstancesOf("Win32_BIOS")
Set ProSet1 = GetObject("winmgmts:").InstancesOf("Win32_SystemEnclosure")
For each Pro in ProSet
  For each Pro1 in ProSet1
    ServiceTag=Pro.SerialNumber
    exit for
  Next
  exit for
Next

'get username and computername, could also be asked in a batch
Set oShell     = WScript.CreateObject("WScript.Shell")
Set oShellEnv  = oShell.Environment("Process")
sComputerName  = oShellEnv("ComputerName")
sUsername      = oShellEnv("username")

dim filesys, filetxt, getname, path
Set filesys = CreateObject("Scripting.FileSystemObject")
Set filetxt = filesys.CreateTextFile("\\xx.xx.xx.xx\Support\DataLog.txt", 8, True)
path = filesys.GetAbsolutePathName("\\xx.xx.xx.xx\Support\DataLog.txt")
getname = filesys.GetFileName(path)
filetxt.WriteLine sUsername & ", " & sComputerName & ", " & ServiceTag
filetxt.Close

谢谢大家!

直接从VBScript文档:

object.CreateTextFile(filename[, overwrite[, unicode]])

object.OpenTextFile(filename[, iomode[, create[, format]]])
从您的代码:

Set filetxt = filesys.CreateTextFile(filename, 8, True)
诊断:

使用.OpenTextFile()的参数调用.CreateTextFile()

补救措施:

使用.OpenTextFile():


这听起来可能很有趣,但这很管用——除了开始用中文或韩文书写;此功能由.OpenTextFile()的第四个参数控制。(见文件)。第二个想法:是否删除了前一个.CreateTextFile()调用创建的文件?我已将格式参数更改为“-2”,这很有效。但是当看到你的第二个想法时,我并没有删除它,我相信这是问题的根源。非常感谢你。
Set filetxt = filesys.OpenTextFile(filename, 8, True)