VBScript-修改Windows环境变量
我目前使用一个批处理文件覆盖一些环境变量,使游戏可移植 主要内容如下:VBScript-修改Windows环境变量,vbscript,environment-variables,Vbscript,Environment Variables,我目前使用一个批处理文件覆盖一些环境变量,使游戏可移植 主要内容如下: Set USERPROFILE = %CD% 这仅在该会话或从批处理加载的程序中保持有效。因此,当我在游戏中加载以下内容时: Start "" "FL.exe" 游戏将My Documents、My Pictures和AppData文件夹视为在我的游戏文件夹中 是否可以在VBScript中复制此功能?是,通过对象复制。您可以在系统、用户和流程级别查询、添加和删除环境变量 例如: Set objShell = Create
Set USERPROFILE = %CD%
这仅在该会话或从批处理加载的程序中保持有效。因此,当我在游戏中加载以下内容时:
Start "" "FL.exe"
游戏将My Documents、My Pictures和AppData文件夹视为在我的游戏文件夹中
是否可以在VBScript中复制此功能?是,通过对象复制。您可以在系统、用户和流程级别查询、添加和删除环境变量
例如:
Set objShell = CreateObject("WScript.Shell")
Set objProcessVars = objShell.Environment("process")
' Query existing environmental variables...
For Each objVar In objProcessVars
WScript.Echo objVar
Next
' Add/Override a process-level variable...
objProcessVars("USERPROFILE") = "C:\Test"
' Spawned processes inherit your process-level variables...
objShell.Run "C:\AnotherScript.vbs"
' When script terminates, changes are lost.
是的,通过这个物体。您可以在系统、用户和流程级别查询、添加和删除环境变量
例如:
Set objShell = CreateObject("WScript.Shell")
Set objProcessVars = objShell.Environment("process")
' Query existing environmental variables...
For Each objVar In objProcessVars
WScript.Echo objVar
Next
' Add/Override a process-level variable...
objProcessVars("USERPROFILE") = "C:\Test"
' Spawned processes inherit your process-level variables...
objShell.Run "C:\AnotherScript.vbs"
' When script terminates, changes are lost.
该函数的执行情况是否与我最初的问题完全相同?暂时的?传递到VBScript加载的任何EXE?是。VBScript生成的任何进程都将继承进程级环境变量。当脚本终止时,对进程级变量的任何更改都将丢失。感谢您的帮助:)该函数的性能是否与我最初的问题中的完全相同?暂时的?传递到VBScript加载的任何EXE?是。VBScript生成的任何进程都将继承进程级环境变量。当脚本终止时,对进程级变量的任何更改都将丢失。感谢您的帮助:)