Я хочу получить список информации (с именем файла и реальным названием темы) об установленных темах AERO в ОС Windows 7.
Также мне нужно изменить текущую тему на одну из установленных тем, но без использования process.start(ThemeFile)
, потому что панель персонализации открывается, когда я пытаюсь это сделать...
Я знаю, что вот файлы установленных тем, чтобы получить имена файлов: "C:\Windows\Resources\Themes"
Но я спрашиваю, существует ли лучший способ, чем перечисление содержимого файла этого каталога, потому что мне тоже нужны настоящие имена, и я хочу знать, как изменить текущую тему на другую, не открывая панель персонализации.
Пример тому... У меня в ОС только две темы Aero.
Имена файлов:
Aero.theme
Concave_seven.theme
Но имена тем, которые появляются на панели персонализации:
Windows 7
Concave 7
Я хочу восстановить имена файлов и настоящие имена, чтобы сохранить их в списке, чтобы изменить текущую тему на нужную тему.
Обновить,
Что я пробовал...
' Load theme names
For Each Theme As System.IO.FileInfo In New System.IO.DirectoryInfo(Environment.GetEnvironmentVariable("windir") & "\Resources\Themes").GetFiles("*theme")
ComboBox1.Items.Add(Theme.ToString.Substring(0, Theme.ToString.Length - 6))
Next
' Change theme
' Process.start(ThemeFilename)
' rundll32.exe Shell32.dll,Control_RunDLL desk.cpl desk,@Themes /Action:OpenTheme /File:"C:\Windows\Resources\Themes\aero.theme"