|
|
Вверх #1 |
ПродвинутыйАвтор темы Регистрация: 07.03.2007
|
Две видеокарты в двух системах Windows.
Всем привет! Прошу помощи, т.к. говорил один персонаж - нет у меня никаких ... идей.
Суть такова: Есть видеокарта GTX 1660Super и RTX5070. Есть два монитора. Мониторы подключены к разным картам. Есть две системы 7 и 10. Обе видеокарты установлены в одном компьютере. 1660 и 7 существуют с целью получить 3DVision на мониторе. Раньше всё работало, но после установки RTX в семёрке, видимо, произошёл конфликт. Драйвера в системе есть, но карты отображаются как VGA - устройства. То есть, по сути, никак. Попытки деактивировать RTX в диспетчере устройств ни к чему не приводят. Удаление карты там же так же. Переустановка драйверов после отключения видеокарты RTX в диспетчере проходит нормально, но эффекта ноль. Видеокарта начинает отображается как GTX 1660, но пишет - драйвер не установлен. Это весь эффект от установки. Даже панель nVidia в контекстном меню не появляется.Более того, изображение всегда идёт через RTX, что бы я не делал, а монитор подключённый к GTX изображения не показывает. В 10 тоже не гладко, но там 1660 главная видеокарта, а RTX вообще не работает и изображение всегда идёт через GTX. Более того, драйвера так же глючат и два монитора работают параллельно. Выбрать режим клонирование невозможно. Он активен, но неработоспособен. Цель: заставить видеокарты работать в разных системах. Запуская 7 изображение подаётся на монитор 3D и RTX в ней как бы вообще не существует. В 10 не существует GTX. То есть, запуская 7 или 10, я тем самым выбираю рабочий монитор и видеокарту. Вопрос, как сделать вторую видеокарту невидимой в системе? Идей у меня уже ноль. Спасибо. Последний раз редактировалось Zemlanin; 02.10.2025 в 22:35. |
|
|
|
|
|
Вверх #2 |
МодераторРегистрация: 06.05.2003
Адрес: Иркутск
|
Нейросеть в помощь
СПОЙЛЕР »
Очень интересная и специфическая проблема! Вы пытаетесь создать гибридную систему с разделением видеокарт по ОС, что действительно сложно, но в теории возможно. Вот комплексное решение, которое должно помочь.
### Основная проблема и почему текущие методы не работают Проблема в том, что **Windows автоматически обнаруживает и пытается инициализировать ВСЕ установленные в системе видеокарты**, независимо от того, к какой из них подключен монитор. Драйверы NVIDIA конфликтуют, когда видят две карты из разных архитектурных поколений (Turing + Ada Lovelace) в одной системе, особенно в Windows 7, где нет нативной поддержки RTX 50xx. Простое отключение в Диспетчере устройств не работает, потому что система при следующем запуске или обновлении конфигурации оборудования снова их обнаруживает. --- ### Решение: Аппаратное и программное "сокрытие" карты Вам нужно физически и логически изолировать карты для разных ОС. Есть два основных пути. #### **Способ 1: Аппаратный (Предпочтительный и Наиболее Надежный)** Этот метод использует возможность материнской платы включать/выключать определенные PCIe-слоты. **Что вам понадобится:** * Скрипты для запуска при загрузке (BAT/VBS). * Утилита `devcon.exe` от Microsoft (входит в Windows Driver Kit, но легко скачать отдельно). **План действий:** 1. **Определите PCI-идентификаторы ваших карт:** * Загрузитесь в Windows 10, где должны быть видны обе карты. * Откройте Диспетчер устройств, найдите ваши карты. * Перейдите в "Свойства" -> "Сведения" -> "ИД оборудования". * Вы увидите что-то вроде: * `PCI\VEN_10DE&DEV_21C4&SUBSYS_...` для GTX 1660 Super * `PCI\VEN_10DE&DEV_...` для RTX 5070 * Скопируйте полные ID для каждой карты. Они понадобятся для скриптов. 2. **Создайте скрипты для управления картами:** **Скрипт для Windows 7 (`Enable_1660_Disable_5070.bat`):** ```batch Код:
@echo off
REM -- Отключаем RTX 5070 используя его ID оборудования --
devcon disable "PCI\VEN_10DE&DEV_<ID_5070>*"
REM -- Включаем GTX 1660 Super (на всякий случай) --
devcon enable "PCI\VEN_10DE&DEV_<ID_1660>*"
echo GTX 1660 Super activated, RTX 5070 disabled.
pause
**Скрипт для Windows 10 (`Enable_5070_Disable_1660.bat`):** ```batch Код:
@echo off
REM -- Отключаем GTX 1660 Super используя его ID оборудования --
devcon disable "PCI\VEN_10DE&DEV_<ID_1660>*"
REM -- Включаем RTX 5070 (на всякий случай) --
devcon enable "PCI\VEN_10DE&DEV_<ID_5070>*"
echo RTX 5070 activated, GTX 1660 Super disabled.
pause
**Замените `<ID_5070>` и `<ID_1660>` на реальные ID из шага 1.** 3. **Настройте автозапуск скриптов:** * Поместите `devcon.exe` и ваши BAT-файлы в одну папку (например, `C:\VideoSwitch\`). * В Windows 7 создайте ярлык для скрипта `Enable_1660_Disable_5070.bat` и поместите его в папку "Автозагрузка" (Пуск -> Все программы -> Автозагрузка). * Аналогично для Windows 10, но для скрипта `Enable_5070_Disable_1660.bat`. * **Важно:** Запускайте BAT-файлы **от имени Администратора**. Чтобы это сделать автоматически, можно создать VBS-скрипт-обертку: ```vbscript Set WshShell = CreateObject("WScript.Shell") WshShell.Run "cmd /c C:\VideoSwitch\Enable_1660_Disable_5070.bat", 0, False ``` Сохраните как `startup.vbs` и поместите его в автозагрузку вместо BAT-файла. **Как это работает:** При загрузке Windows 7 скрипт автоматически отключит RTX 5070 до того, как система попытается загрузить для него драйверы. GTX 1660 Super останется единственной работающей картой. Аналогично для Windows 10. --- #### **Способ 2: Через настройки BIOS/UEFI (Идеальный, но редко поддерживается)** Некоторые материнские платы позволяют отключать конкретные PCIe-слоты. 1. Перезагрузите компьютер и зайдите в BIOS/UEFI. 2. Ищите раздел с названием вроде "Advanced", "Integrated Peripherals", "PCIe Configuration". 3. Посмотрите, есть ли там опции для отключения конкретных слотов PCIe (например, "PCIe x16 Slot 2" -> "Disabled"). 4. **Для Windows 7:** Отключите слот, в который установлена RTX 5070. 5. **Для Windows 10:** Отключите слот, в который установлена GTX 1660 Super. **Недостаток:** Вам придется заходить в BIOS каждый раз при переключении между ОС, что крайне неудобно. --- ### Дополнительные рекомендации и шаги для "тонкой" настройки 1. **Порядок загрузки и основной дисплей в BIOS:** * В BIOS установите параметр "Primary Display" или "Init Display First" в значение **`PCIe`** (а не `Auto` или `IGPU`). Пусть система сама решает, какую карту инициализировать первой. Ваши скрипты довершат дело. 2. **Чистая установка драйверов в новой конфигурации:** * После настройки скриптов загрузитесь в Windows 7. * Убедитесь, что RTX 5070 отключена (должна исчезнуть из Диспетчера устройств). * Скачайте DDU (Display Driver Uninstaller). * Загрузитесь в **Безопасном режиме**. * Запустите DDU и полностью удалите все драйверы NVIDIA. * Перезагрузитесь в обычном режиме. Установите **только старые, совместимые с 3D Vision драйверы** для вашей GTX 1660 Super. Панель управления NVIDIA должна появиться. 3. **Повторите для Windows 10:** * Загрузитесь в Win 10, убедитесь, что GTX 1660 отключена. * Используйте DDU в Безопасном режиме для очистки. * Установите самые последние драйверы для RTX 5070. ### Итог **Рекомендуемая последовательность действий:** 1. Начните со **Способа 1 (DevCon + скрипты в автозагрузке)**. Это самый гибкий и вероятный путь к успеху. 2. Проверьте BIOS на поддержку отключения слотов (**Способ 2**), если найдете такую опцию — это значительно упростит жизнь. 3. Обязательно выполните **чистую переустановку драйверов с помощью DDU** после того, как механизм отключения карт будет работать. Это критически важно для устранения текущих конфликтов. Этот подход заставит систему видеть только одну "нужную" видеокарту в каждой ОС, что полностью соответствует вашей цели: "Запуская 7 изображение подаётся на монитор 3D и RTX в ней как бы вообще не существует. В 10 не существует GTX".
__________________
Добро всегда побеждает зло, поэтому кто победил - тот и добро. |
|
|
|
|
|
Вверх #3 |
МодераторРегистрация: 29.06.2004
|
Цитата
(Zemlanin) »
1660 и 7 существуют с целью получить 3DVision на мониторе.
Цитата
(Zemlanin) »
Раньше всё работало, но после установки RTX в семёрке, видимо, произошёл конфликт.
Цитата
(Zemlanin) »
Драйвера в системе есть, но карты отображаются как VGA - устройства.
__________________
Хочешь помочь новичку — делай вместе с ним. Хочешь помочь старику — делай вместо него. Хочешь помочь мастеру — отойди и не мешай. А хочешь помочь Таргитаю — сам Таргитай. |
|
|
|
|
|
Вверх #4 |
ПродвинутыйАвтор темы Регистрация: 07.03.2007
|
Во первых, спасибо вам за ответ. Я попробовал этот метод по пунктам.
Цитата
(SOLO) »
Утилита `devcon.exe`
Во первых, с мая на сайте Microsoft нет старых версий. Ищите! Я нашёл, но ни одна из них не работает. Во вторых, выяснилось, что в 7 была интегрирована эта утилита с самого начала, то есть была в системе, но на форумах, которые я читал, говорят, что работала она как то криво. Но поскольку она всё же была, версий под 7 я нашёл только одну. В третьих, ещё оказалось, что версии этой утилиты есть не просто под разные версии Windows (XP, Vista... 10), но даже под сборки (W10 1499, 1677, 1851, и т.д. цифры версий условны) нужна своя версия. Короче, это был тот ещё квест. Но нет, у меня ничего не получилось. Скрипт у меня не работал. Я пробовал так же и оболочку администрирования, но и она ругалась на синтаксис. А скрипт самого отключения если и запускался, то выдавал кучу ошибок отсутствующих в системе компонентов. Очень интересно, что за сетка, потому как я использовал для поиска решения и DP и Алису. ChatGPT не использовал. garniv Привет! Думал из старых уже никого нет. Приятно видеть) Цитата
(garniv) »
Вроде до версии драйвера 425.31 была поддержка Nvidia 3D Vision для Win10 x64.
Ну и в конце концов, как я с этим драйвером должен запустить RTX? Цитата
(garniv) »
Я бы вынул RTX обратно и посмотрел что изменится.
Цитата
(garniv) »
Скрины из их свойств?
P.S. Вообще, интересно, а как люди тогда выбирают какую ни будь старую видеокарту для обработки PhysX, если старые и новые видеокарты ведут себя так. Последний раз редактировалось Zemlanin; 03.10.2025 в 22:24. |
|
|
|