21

Windows Scripting Host (WSH) VBS スクリプトでシステム環境変数を読み取ることはできますか?

(Cruise Control のタスク用に Windows Scripting Host を使用して VBScript を作成しており、プロジェクトのビルド URL を取得したいと考えています。)

4

5 に答える 5

28

例を次に示します (ここから取得):

Set oShell = CreateObject( "WScript.Shell" )
user=oShell.ExpandEnvironmentStrings("%UserName%")
comp=oShell.ExpandEnvironmentStrings("%ComputerName%")
WScript.Echo user & " " & comp
于 2009-05-24T21:57:03.617 に答える
7

ここから...

Set WshShell = WScript.CreateObject("WScript.Shell")

Set WshProccessEnv = WshShell.Environment("Process")
Set WshSysEnv = WshShell.Environment("System")

Wscript.Echo WshSysEnv("NUMBER_OF_PROCESSORS")
Wscript.Echo WshProccessEnv("Path")

また、TechNet の詳細もご覧ください。

于 2009-05-24T21:55:59.827 に答える
6
Set WshShell = CreateObject("WScript.Shell")    
Set WshEnv = WshShell.Environment
WScript.Echo "WINDIR=" & WshEnv.Item("WINDIR")  & vbCrLf & vbCrLf   
Set WshShell = CreateObject("WScript.Shell")
WScript.Echo "Environment System:"              & vbCrLf & _ 
         "..............................................."

For Each IEnv In WshShell.Environment("System")
    WScript.Echo IEnv
Next

WScript.Echo vbCrLf & "Environment User:"       & vbCrLf & _   
        "..............................................."

For Each IEnv In WshShell.Environment("User") 
    WScript.Echo IEnv
Next

WScript.Echo vbCrLf & "Environment Volatile:"   & vbCrLf & _ 
       "..............................................."

For Each IEnv In WshShell.Environment("Volatile")
    WScript.Echo IEnv
Next

WScript.Echo vbCrLf & "Environment Process:"    & vbCrLf & _ 
       "..............................................."

For Each IEnv In WshShell.Environment("Process")
    WScript.Echo IEnv
Next
于 2012-12-20T22:37:22.240 に答える
-1

これは私のために働く:

Dim objNetwork
Set objNetwork = CreateObject("WScript.Network")
MsgBox objNetwork.UserName

またはシェルから:

Set wshShell = WScript.CreateObject( "WScript.Shell" )
strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )

または環境変数から(動作するはずですが、テストしたところ間違っていました!):

Set WshShell = CreateObject("WScript.Shell")
Set WshEnv = WshShell.Environment
MsgBox "USERNAME=" & WshEnv.Item("USERNAME")
于 2015-03-09T14:12:56.800 に答える