Имя параметра с переменной и путем
Цитата: Миша от 28.01.2022, 07:05Всем привет! Делаю VBS который добавляет ключ в реестр по настройке графики. Имя данного параметра состоит из [simple_tooltip content='scriptdir']переменной[/simple_tooltip] и второй части пути внутри папки. Подскажите, пожалуйста, как такое реализовать на VBS
Прикрепляю Свои reg, который нужно "перенести" в VBS с переменным расположением и кривой VBS
[spoiler title="reg"]Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences]
"D:\\Portable Programs\\Minecraft\\tl\\mojang_jre\\jre-legacy\\windows-x64\\jre-legacy\\bin\\javaw.exe"="GpuPreference=2;"[/spoiler][spoiler title="VBS"]
Response = MsgBox ("Включить дискретную графику по умолчанию?", vbYesNo + vbQuestion + vbDefaultButton2, "Настройки графики")
if Response = vbYes then
set key = CreateObject("WScript.Shell")
scriptdir = replace(WScript.ScriptFullName,WScript.ScriptName,"")
key.RegWrite "HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences\" & scriptdir & "tl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe", "GpuPreference=2;"
MsgBox "Готовченко!", vbOKOnly + vbInformation, "Настройки графики"
else
Wscript.Quit
end if[/spoiler]
Всем привет! Делаю VBS который добавляет ключ в реестр по настройке графики. Имя данного параметра состоит из переменной и второй части пути внутри папки. Подскажите, пожалуйста, как такое реализовать на VBS
Прикрепляю Свои reg, который нужно "перенести" в VBS с переменным расположением и кривой VBS
СкопированоWindows Registry Editor Version 5.00
Скопировано[HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences]
Скопировано"D:\\Portable Programs\\Minecraft\\tl\\mojang_jre\\jre-legacy\\windows-x64\\jre-legacy\\bin\\javaw.exe"="GpuPreference=2;"
СкопированоResponse = MsgBox ("Включить дискретную графику по умолчанию?", vbYesNo + vbQuestion + vbDefaultButton2, "Настройки графики")
Скопированоif Response = vbYes then
Скопированоset key = CreateObject("WScript.Shell")
Скопированоscriptdir = replace(WScript.ScriptFullName,WScript.ScriptName,"")
Скопированоkey.RegWrite "HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences\" & scriptdir & "tl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe", "GpuPreference=2;"
СкопированоMsgBox "Готовченко!", vbOKOnly + vbInformation, "Настройки графики"
Скопированоelse
СкопированоWscript.Quit
Скопированоend if
Цитата: Mikhail от 28.01.2022, 07:29Добрый🖐.
Я не понял что вы хотите, в реестре есть данные и значения, то есть по идее, должно быть такGpuPreference - данныеи его значение 2, у васtl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe", "GpuPreference=2;"
Что это? Как это в реестре должно выглядеть(куда писать GpuPreference?), покажите правильный пример.
Это вообще как должно добавиться в реестр?
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences] "D:\\Portable Programs\\Minecraft\\tl\\mojang_jre\\jre-legacy\\windows-x64\\jre-legacy\\bin\\javaw.exe"="GpuPreference=2;"
Добрый🖐.
Я не понял что вы хотите, в реестре есть данные и значения, то есть по идее, должно быть так СкопированоGpuPreference - данныеи его значение 2, у вас
tl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe", "GpuPreference=2;"
Что это? Как это в реестре должно выглядеть(куда писать GpuPreference?), покажите правильный пример.
Это вообще как должно добавиться в реестр?
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences] "D:\\Portable Programs\\Minecraft\\tl\\mojang_jre\\jre-legacy\\windows-x64\\jre-legacy\\bin\\javaw.exe"="GpuPreference=2;"
Цитата: Mikhail от 28.01.2022, 07:49Возможно не правильно понял, но понял так.
key.RegWrite "HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences\", scriptdir & "tl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe, ""GpuPreference=2"""
Возможно не правильно понял, но понял так.
key.RegWrite "HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences\", scriptdir & "tl\mojang_jre\jre-legacy\windows-x64\jre-legacy\bin\javaw.exe, ""GpuPreference=2"""
Цитата: Миша от 28.01.2022, 09:58Эта такая настройка графики в параметрах дисплея, определяет, с какой видеокартой следует запускать приложение: с встроенной или дискретной. Именно так странно и должна висеть настройка в реестре. В случае с Твоим твиком меняется именно параметр по умолчанию, а Мне нужно в названии параметра указать путь к файлу
Эта такая настройка графики в параметрах дисплея, определяет, с какой видеокартой следует запускать приложение: с встроенной или дискретной. Именно так странно и должна висеть настройка в реестре. В случае с Твоим твиком меняется именно параметр по умолчанию, а Мне нужно в названии параметра указать путь к файлу
Цитата: Mikhail от 28.01.2022, 11:16Response = MsgBox("Включить дискретную графику по умолчанию?", vbYesNo + vbQuestion, "Настройки графики") if Response = vbYes then scriptdir = replace(WScript.ScriptFullName,WScript.ScriptName,"") const HKEY_CURRENT_USER = &H80000001 Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv") If Err.Number <> 0 Then End If intRes = objReg.SetStringValue(HKEY_CURRENT_USER, "SOFTWARE\Microsoft\DirectX\UserGpuPreferences", scriptdir & "", "GpuPreference=2;") MsgBox "Готовченко!", vbOKOnly + vbInformation, "Настройки графики" end ifТеперь норм, выше можно удалить сообщение, спасибо.
После scriptdir в кавычках, путь до exe допиши.
Response = MsgBox("Включить дискретную графику по умолчанию?", vbYesNo + vbQuestion, "Настройки графики")
if Response = vbYes then
scriptdir = replace(WScript.ScriptFullName,WScript.ScriptName,"")
const HKEY_CURRENT_USER = &H80000001
Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
If Err.Number <> 0 Then
End If
intRes = objReg.SetStringValue(HKEY_CURRENT_USER, "SOFTWARE\Microsoft\DirectX\UserGpuPreferences", scriptdir & "", "GpuPreference=2;")
MsgBox "Готовченко!", vbOKOnly + vbInformation, "Настройки графики"
end if
Теперь норм, выше можно удалить сообщение, спасибо.
После scriptdir в кавычках, путь до exe допиши.
Цитата: Миша от 28.01.2022, 11:52Все получилось! Спасибо за отзывчивость
Скажи, пожалуйста, как Ты научился такие сложные скрипты писать? Просто Google или есть какой-то сайт, где все грамотно расписано?
Все получилось! Спасибо за отзывчивость
Скажи, пожалуйста, как Ты научился такие сложные скрипты писать? Просто Google или есть какой-то сайт, где все грамотно расписано?
Цитата: Mikhail от 28.01.2022, 11:56Вы пользователи даете задания, я пробую их решать сам, не зная как, вот этот скрипт, прям сегодня и научился), в гугле инфу насобирал, наработки Хачатура(ценнейшая информация которой в гугле просто нет) и составил скрипт.
Вы пользователи даете задания, я пробую их решать сам, не зная как, вот этот скрипт, прям сегодня и научился), в гугле инфу насобирал, наработки Хачатура(ценнейшая информация которой в гугле просто нет) и составил скрипт.
Цитата: Миша от 28.01.2022, 12:02Это интересно, спасибо
Это интересно, спасибо