1

コンピューターからサービスタグ、ユーザー名、コンピューター名を取得するVBScriptを作成しました。私が今する必要があるのは、この情報をテキストドキュメントにまとめることです。

設定方法は次のとおりです。

ログインスクリプト用のフォルダを備えたActiveDirectoryサーバーがあります。この.vbsスクリプトを実行するためのバッチファイルを作成しましたが、これまでのところ、スクリプトは正常に機能しています。ここで必要なのは、ADサーバー上の「logging.txt」というファイルに、.vbsスクリプトで作成された情報を入力することです。

これは私がこれまでに持っているスクリプトです:

'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
    wscript.echo ServiceTag
    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")
wscript.echo sComputerName & " " & sUsername

事前にどうもありがとうございました!

これは私がこれまでに試したことです:

sub log (user, computer)
  dim fs,f
  set fs=Server.CreateObject("Scripting.FileSystemObject")
  set f=fs.OpenTextFile(Server.MapPath(".\logging.csv"),8,true)
  f.WriteLine now & "," & user & "," & computer
  f.Close:set f=Nothing
  set fs=Nothing
end sub
4

2 に答える 2

1

何かを忘れているような気がします。これがVBSでテキストファイルを書く方法です。

dim filesys, filetxt, getname, path
Set filesys = CreateObject("Scripting.FileSystemObject")
Set filetxt = filesys.CreateTextFile("c:\somefile.txt", True)
path = filesys.GetAbsolutePathName("c:\somefile.txt")
getname = filesys.GetFileName(path)
filetxt.WriteLine("Your text goes here.")
filetxt.Close
If filesys.FileExists(path) Then
   Response.Write ("Your file, '" & getname & "', has been created.")
End If
于 2012-06-20T15:34:54.233 に答える
0

情報をローカルのテキスト ファイルに保存し、スクリプトを呼び出すバッチ スクリプトからコマンド ライン ftp ユーティリティを使用してアップロードする方が、別の車輪を発明して vbscript で実行するよりもおそらく最も簡単でしょう。

次のコマンドを使用して、ftp のコマンド ライン オプションを一覧表示できます。

ftp /?

次のような設定をお勧めします。

ftp -s:control.txt

control.txt には次のようなものが含まれます。

open [hostname or address]
[username]
[password]
cd [remote directory name]
put logging.txt
disconnect
bye
于 2012-06-20T15:27:49.543 に答える