Imports Microsoft.Win32.Registry Public Class FrmRegistry ''' ''' 软件存放在注册表的根路径 ''' Private ReadOnly _appConfig As String = $"software\AUTS" Private ReadOnly _dataServiceName As String = $"AUTS_DataService" Private ReadOnly _updateServiceName As String = $"AUTS_UpdateService" ''' ''' License可访问的公共路径 ''' Private ReadOnly _licensePath As String = $"C:\AUTS\Licnese" ''' ''' 数据库文件夹路径 ''' Private ReadOnly _localDbDirPath As String = $"C:\AUTS\localDb" ''' ''' 数据服务的路径 ''' Private ReadOnly _dataServicePath As String = $"C:\AUTS\DataService" ''' ''' 更新服务的路径 ''' Private ReadOnly _updateServicePath As String = $"C:\AUTS\UpdateService" ''' ''' 自定义选择文件夹 ''' ''' Private Function SelectFolderString() As String Dim txtString As String = String.Empty Using folder As New FolderBrowserDialog If folder.ShowDialog() = DialogResult.OK Then txtString = folder.SelectedPath End If End Using Return txtString End Function ''' ''' 自定义选择文件 ''' ''' Private Function SelectFileString() As String Dim txtString As String = String.Empty Using folder As New OpenFileDialog If folder.ShowDialog() = DialogResult.OK Then txtString = folder.FileName End If End Using Return txtString End Function ''' ''' License自定义文件夹路径 ''' ''' ''' Private Sub BtnLicense_Click(sender As Object, e As EventArgs) Handles BtnLicense.Click TBoLicnese.Text = SelectFileString() End Sub ''' ''' LocalDb自定义文件夹路径 ''' ''' ''' Private Sub BtnLocalDb_Click(sender As Object, e As EventArgs) Handles BtnLocalDb.Click TBoLocalDb.Text = SelectFileString() End Sub ''' ''' DataServicePath自定义文件夹路径 ''' ''' ''' Private Sub BtnDataSerPath_Click(sender As Object, e As EventArgs) Handles BtnDataSerPath.Click TBoDataSerPath.Text = SelectFolderString() End Sub ''' ''' UpDateServicePath自定义文件夹路径 ''' ''' ''' Private Sub BtnUpDateSerPath_Click(sender As Object, e As EventArgs) Handles BtnUpDateSerPath.Click TBoUpDateSerPath.Text = SelectFolderString() End Sub Private Sub FrmRegistry_Load(sender As Object, e As EventArgs) Handles Me.Load If Registry.RootDirExists() = False Then MsgBox("AUTS RootDir Not Exists !") Return End If '获取本地注册表设定值 Dim licensePath As String = Registry.LicensePath Dim localdbPath As String = Registry.LocalDb Dim dsName As String = Registry.DataServiceName Dim dsVer As String = Registry.DataServiceVersion Dim dsDir As String = $"{Registry.DataServiceDirPath}\{dsVer}" Dim dsFile As String = Registry.DataServiceExeName Dim usName As String = Registry.UpdateServiceName Dim usVer As String = Registry.UpdateServiceVersion Dim usDir As String = $"{Registry.UpdateServiceDirPath}\{usVer}" Dim usFile As String = Registry.UpdateServiceExeName TBoLicnese.Text = licensePath TBoLocalDb.Text = localdbPath TBoDataServiceVersion.Text = dsDir TBoUpdateServiceVersion.Text = usDir TBoDataSerPath.Text = dsDir TBoUpDateSerPath.Text = usDir Console.WriteLine($"dsName:{dsName},dsFile:{dsFile},usName:{usName},usFile:{usFile}!") End Sub ''' ''' 应用键值 ''' ''' ''' Private Sub BtnSaveTheKeyValue_Click(sender As Object, e As EventArgs) Handles BtnSaveTheKeyValue.Click '设置键值 Dim valLicense As String = TBoLicnese.Text Dim valLocalDb As String = TBoLocalDb.Text Dim valDSVer As String = TBoDataServiceVersion.Text Dim valUSVer As String = TBoUpdateServiceVersion.Text Dim valDataSer As String = TBoDataSerPath.Text Dim valUpdateSer As String = TBoUpDateSerPath.Text '创建项 Registry.LicensePath = valLicense Registry.LocalDb = valLocalDb Registry.DataServiceName = _dataServiceName Registry.DataServiceVersion = valDSVer Registry.DataServiceDirPath = valDataSer Registry.DataServiceExeName = $"{_dataServiceName}.exe" Registry.UpdateServiceName = _updateServiceName Registry.UpdateServiceVersion = valUSVer Registry.UpdateServiceDirPath = valUpdateSer Registry.UpdateServiceExeName = $"{_updateServiceName}.exe" If MsgBox($"Save Settings Success!Do you want to close the settings form?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then DialogResult = DialogResult.Yes End If End Sub ''' ''' 默认值按键 ''' ''' ''' Private Sub BtnDefault_Click(sender As Object, e As EventArgs) Handles BtnDefault.Click '设置键值 TBoLicnese.Text = _licensePath TBoLocalDb.Text = _localDbDirPath TBoDataSerPath.Text = _dataServicePath TBoUpDateSerPath.Text = _updateServicePath End Sub ''' ''' 关闭注册表窗体 ''' ''' ''' Private Sub BtnCloseFrmRegistry_Click(sender As Object, e As EventArgs) Handles BtnCloseFrmRegistry.Click DialogResult = DialogResult.No End Sub End Class