以下回答参考 皆我百晓生、券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。
要将这些值添加到系统变量中,请确保您已经正确安装了VB.NET的Registry类库。如果还没有安装,可以通过以下步骤进行安装:
- 打开命令提示符(CMD)。
- 输入
dotnet add package Microsoft.VisualBasic.dll并回车。
然后,在您的代码中,您可以直接访问System.Environment来获取当前用户环境变量,并通过GetValue()方法来获取或设置特定的环境变量。
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim variable_name As String = "UGII_LANG"
Dim variable_value As String = "simpl_chinese"
Set EnvVar = Registry.GetValue("HKEY_CURRENT_USER\Environment", variable_name, "")
If EnvVar Is Nothing Then
EnvVar = New RegistryValue
EnvVar.Name = variable_name
EnvVar.ValueType = RegistryValueType.String
EnvVar.DefaultValue = variable_value
EnvVar.Save()
Else
EnvVar.Value = variable_value
EnvVar.Save()
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim variable_name As String = "UGII_LANG"
Dim variable_value As String = "english"
Set EnvVar = Registry.GetValue("HKEY_CURRENT_USER\Environment", variable_name, "")
If EnvVar Is Nothing Then
EnvVar = New RegistryValue
EnvVar.Name = variable_name
EnvVar.ValueType = RegistryValueType.String
EnvVar.DefaultValue = variable_value
EnvVar.Save()
Else
EnvVar.Value = variable_value
EnvVar.Save()
End If
End Sub
Public Class RegistryValue
Private _Name As String
Private _ValueType As RegistryValueType
Private _DefaultValue As String
Private _Value As String
Private _Save As Boolean
Public Property Name() As String
Return _Name
End Property
Public Property ValueType() As RegistryValueType
Return _ValueType
End Property
Public Property DefaultValue() As String
Return _DefaultValue
End Property
Public Property Value() As String
Return _Value
End Property
Public Property Save() As Boolean
Return _Save
End Property
Public Property EnvironmentKey As String
Get
Return "HKEY_CURRENT_USER\Environment"
End Get
Set(value As String)
Me._EnvironmentKey = value
End Set
End Property
Public Property RegistryKey As String
Get
Return "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\{00020400-0000-0000-C000-000000000046}\InstallLocation"
End Get
Set(value As String)
Me._RegistryKey = value
End Set
End Property
Public Sub Load()
Dim reg As RegistryObject
Dim key As String
Dim val As String
key = EnvironmentKey
reg = RegistryObject.Create(key)
val = reg.GetValue(KeyName)
_Name = reg.Name
_ValueType = reg.ValueType
_DefaultValue = val
_Value = val
_Save = True
End Sub
Public Sub Save()
Dim reg As RegistryObject
Dim key As String
Dim val As String
key = EnvironmentKey
reg = RegistryObject.Create(key)
reg.SetValue(KeyName, Value)
End Sub
End Class
End Class
在这个示例中,我们创建了一个RegistryValue类来存储每个环境变量的信息。当您单击按钮时,它会调用Load()方法来读取当前用户的环境变量,然后将新值保存到环境中。这样,即使您不关闭应用程序,每次重新启动计算机时,环境变量也会被更新。
请注意,这只是一个基本示例,实际应用可能需要处理更复杂的环境变量管理逻辑。