Remkomplekty.ru

IT Новости из мира ПК
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ошибка d3derr invalidcall

CreateDevice возвращает D3DERR_INVALIDCALL

Здравствуйте, есть такой вот код

Данный код вроде и работает, много где проверили, но выложив в паблик у некоторых игроков происходит ошибка, а именно hr возвращает D3DERR_INVALIDCALL.
Посоветуйте какие параметры может поменять или что то где то дополнительно проверить/получить какие то параметры?

  • Wraith
  • Постоялец
  • Anders333
  • Постоялец

morfik
я скопировал твой код, а он вообще не работает, даже не запускается. Пишет что wndRequested_ необьявлен, d3ddev тоже, а d3d вообще неведомая фигня

  • morfik
  • Постоялец

Wraith
спасибо, попробую, надеюсь у меня что то найдет, жаль что у конечного пользователя так не опробовать

  • Executor
  • Удалён

morfik
D3DFMT_X8R8G8B8 может быть не поддерживается. Я помню там может быть какая-то проблема с форматом бекбуфера в сочетании с фулскрином кажется, я уже не могу точно вспомнить.
Как вариант попробовать поменять на A8R8G8B8.

  • ronniko
  • Постоялец

A8R8G8B8
И попробуй заменить D3DFMT_D24S8 на D3DFMT_D16

А разве d3dpp.BackBufferCount должен равен быть нулю ?

И как wndRequested_.wWidth_ и wndRequested_.wHeight_ узнаешь ?

  • ronniko
  • Постоялец
  • morfik
  • Постоялец

Executor
тоже подумывал на

  • morfik
  • Постоялец
  • Executor
  • Удалён

ronniko
> d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;

В Фулскрине так нельзя.

morfik
Хорошо, если бы игрок мог запустить дебаг рантайм, а то так это гадание на кофейной гуще.
Меня вот ещё смущает D3DCREATE_SOFTWARE_VERTEXPROCESSING.

  • Wraith
  • Постоялец

Я тут подумал еще две вещи:

  • пишите в лог драйвер и девайс, потому что «некоторые игроки» играют без драйверов;
  • говорят, что на вин10 есть какие-то проблемы с дх9. Мы, правда, такого не встречали пока, несмотря на обилие ноутбуков и старого железа у детишек.

    • morfik
    • Постоялец

    Executor
    попробую тогда так

    • ronniko
    • Постоялец

    morfik
    Какая видеокарта (модель) и сколько ОЗУ на том компе где ошибка can not create Direct3D device ?

    • morfik
    • Постоялец
    • ronniko
    • Постоялец

    Вот AMD Radeon (TM) R9 390 Series там может стоять новый AMD Crimson драйвер.
    И сама AMD Radeon (TM) R9 390 Series больше заточена на DX11DX12Vulkan.
    Потому что это свежая видеокарта от АМД.
    Может глючить DX9.

    morfik у тебя экзешник(или rar файл, только не на 100 метров) есть, что бы тут потестить ?
    Я бы запустил бы на своем компе.
    Intel I5-2320 ОЗУ 4Gb
    Radeon 7950 VideoRam 3Gb

    PS: У них там все дестрибутивы для DX 9 стоят ? Может dll некоторых нет для DX9 ? У меня такое было при создании SwapChain в DX11. Поставил все дестрибутивы для Directx и заработало.

    Устраняем ошибку D3DERR_NOTAVAILABLE 0x8876086A

    В последнее время пользователи Windows все чаще и чаще стали уведомлять о появлении ошибки D3DERR_NOTAVAILABLE 0x8876086A, когда они пытаются запустить игру, эмулятор или любое другое ресурсоемкое приложение. Данная ошибка не ограничена какой-либо версией Windows, т.е. столкнуться с ней могут практически все пользователи.

    Причины ошибки D3DERR_NOTAVAILABLE 0x8876086A

    • Устаревшая версия DirectX. Самая распространенная причина — устаревшие библиотеки API DirectX. Каждой игре и приложению, которое задействует ресурсы вашего графического ускорителя, требуются определенные библиотеки DirectX. Если приложение не находит в системе необходимых библиотек, то возникает ошибка.
    • Устаревший драйвер видеокарты. Другая причина — устаревший драйвер для видеокарты, установленной в системе. Решением данном случае служит элементарное обновление видеодрайвера.
    • Приложение несовместимо с ОС. Ошибка D3DERR_NOTAVAILABLE 0x8876086A может возникать в том случае, если запускаемое пользователем приложение не совместимо с версией ОС Windows. Режим совместимости может помочь, но это не гарантировано.
    • Конфликт между приложениями. Существует небольшая вероятность того, что запускаемое приложение вошло в конфликт с другим приложением, работающим в системе. Возможно, какое-то ПО уже использует библиотеки и модули, которые требуются для работы нужного вам приложениями.
    • Повреждения системных файлов. В довольно редких случаях ошибка D3DERR_NOTAVAILABLE 0x8876086A может возникать по причине повреждения системных файлов Windows. Решение — восстановление/переустановка системы.

    Методы решения D3DERR_NOTAVAILABLE 0x8876086A

    В данной статье вы найдете шесть методов для устранения этой ошибки, которые были проверены множеством пользователей Windows по всему миру. Если какой-то метод не сработал, то обязательно попробуйте воспользоваться другим. Итак, давайте начнем по порядку…

    Метод №1 Обновление DirectX

    Как мы уже говорили выше, самая распространенная причина для появления данной ошибки — устаревшая версия DirectX. Если дело действительно заключается в этом, то вам достаточно обновить библиотеки этого API — и дело в шляпе. Чтобы обновить DirectX, вам необходимо сделать следующее:

    1. перейдите по этой ссылке и нажмите на кнопку «Скачать»;
    2. уберите галочки со всех рекомендаций Майкрософт и нажмите кнопку «Отказаться и продолжить DirectX End-User Runtime Web Installer»;
    3. дождитесь окончания загрузки файла «dxwebsetup.exe» и запустите его;
    4. следуйте инструкциям на экране и установите последнюю версию DirectX;
    5. перезагрузите компьютер.

    Попробуйте снова запустить нужное вам приложение и проверьте, устранена ли ошибка D3DERR_NOTAVAILABLE 0x8876086A.

    Метод №2 Запуск приложения в режиме совместимости

    Некоторые старые приложение и игры довольно плохо работают на новых версиях Windows. Пытаетесь запустить что-то действительно старое? Попробуйте воспользоваться режимом совместимости. Для этого вам потребуется сделать следующее:

    1. нажмите правой кнопкой мыши на исполнительный файл приложения и выберите «Свойства»;
    2. перейдите во вкладку «Совместимость»;
    3. поставьте галочку возле пункта «Запустить программу в режиме совместимости с:» и выберите подходящую версию Windows;
    4. нажмите «Применить» и «ОК».

    Заметка: выбор версии Windows будет зависеть сугубо от самого приложения, т.е. чем старее приложение, тем ниже, как правило, версию Windows нужно выбирать. Впрочем, в некоторых случаях можно поэкспериментировать с совместимостью и попробовать все версии Windows.

    Проверьте, возникает ли ошибка D3DERR_NOTAVAILABLE 0x8876086A при запуске нужного вам приложения.

    Метод №3 Обновление видеодрайвера

    Устаревший видеодрайвер может вызывать целый ряд проблем при работе с программами и играми, требующих мощностей графического ускорителя. Ошибка D3DERR_NOTAVAILABLE 0x8876086A точно также могла возникнуть из-за устаревшего видеодрайвера.

    1. Нажмите Windows+R;
    2. копируйте в строчку значение «devmgmt.msc» и нажмите Enter;
    3. откройте раздел «Видеоадаптеры»;
    4. нажмите правой кнопкой мыши на свою видеокарту и выберите «Обновить драйвер»;
    5. нажмите на пункт «Автоматический поиск обновленных драйверов»;
    6. дождитесь окончания установки свежего драйвера и перезагрузите компьютер.

    Альтернативно, вы можете провести установку нового видеодрайвера вручную, пройдя на сайт AMD , nVidia или Intel . Загрузив тот или иной установщик, следуйте инструкциям на экране и у вас все получится.

    Как правило, первые три метода в этой статье решают ошибку D3DERR_NOTAVAILABLE 0x8876086A. Но если ошибка все еще не дает вам жизни, то попробуйте выполнить методы ниже.

    Метод №4 Чистая загрузка

    Некоторое программное обеспечение, работающее в системе Windows, теоретически может вызывать появление рассматриваемой ошибки. Чтобы понять, что это за ПО, вам необходимо выполнить чистую загрузку. Сделать это можно следующим образом:

    1. нажмите Windows+R и выполните команду «msconfig»;
    2. переключитесь на вкладку «Службы» и поставьте галочку возле «Не отображать службы Майкрософт»;
    3. нажмите «Применить» и переключитесь на вкладку «Автозагрузка»;
    4. нажмите на строчку «Открыть диспетчер задач»;
    5. отключите все программы из списка при помощи соответствующей кнопки в правом нижнем углу окошка;
    6. перезагрузите компьютер.

    Как только снова зайдете в систему, попытайтесь запустить приложение, из-за которого появлялась ошибка D3DERR_NOTAVAILABLE 0x8876086A. Если ошибка не возникла, то какая-то служба или программа, ранее отключенная вами, была виновником ситуации.

    К сожалению, единственный способ определить, что вызывало ошибку — поочередное включение всех отключенных программ и служб. Это займет достаточно много времени, но таким образом вы наверняка программу/службу, спровоцировавшею проблему.

    Метод №5 Восстановление системы

    Если вы так и не смогли установить причину появление ошибки D3DERR_NOTAVAILABLE 0x8876086A, то вам остается лишь попробовать восстановить систему Windows. Чтобы сделать это, вам потребуется выполнить следующее:

    1. нажмите Windows+R;
    2. пропишите значение «rstrui» и нажмите Enter;
    3. нажмите «Далее» и поставьте галочку возле пункта «Показать больше точек восстановления»;
    4. выберите точку восстановления, созданную перед установкой программы/игры, запуск которой вызывает ошибку, и нажмите «Далее»;
    5. нажмите кнопку «Завершить» для начала процесса восстановления.

    Как только ваша система будет восстановлена, переустановите приложение и попытайтесь его запустить. Есть шанс, что в этот раз никакой ошибки не будет, однако если вы все еще сталкиваетесь с ней — смотрите ниже.

    Метод №6 Возврат ПК к изначальному состоянию

    Это последний и самый эффективный метод в борьбе с ошибкой D3DERR_NOTAVAILABLE 0x8876086A. Сейчас мы попытаемся выполнить возврат Windows к изначальному состоянию, не потеряв при этом важных для вас файлов. Сделайте следующее:

    1. нажмите правой кнопкой мыши на Пуск;
    2. кликните на пункт «Параметры»;
    3. перейдите в раздел «Обновление и безопасность»;
    4. войдите во вкладку «Восстановление»;
    5. нажмите на кнопку «Начать» в разделе «Вернуть компьютер в исходное состояние»;
    6. далее выберите пункт «Сохранить мои файлы».
    7. следуйте инструкциям на экране.

    После возвращения компьютера в исходное состояние ошибка D3DERR_NOTAVAILABLE 0x8876086A должна была исчезнуть и теперь вы сможете запустить необходимое вам приложение без каких-либо проблем.

    Восстановить D3DERR_NOTAVAILABLE Код ошибки 0x8876086A

    Если вы используете Media Player Classic в операционной системе Windows (Windows 10 / 8 / 7 или Windows XP), вы можете получить следующую ошибку при попытке воспроизведения видео, но видео обычно воспроизводится после нажатия OK.

    «CreateDevice не удалось,
    Код ошибки: 0x8876086A
    Ошибка DX9AllocatorPresenter

    Используйте диагностический инструмент DirextX.

    Используйте диагностический инструмент DirextX, чтобы убедиться, что DirectDraw Acceleration и Direct3D Acceleration включены. Для этого:

    1. Нажмите Пуск> Выполнить, введите dxdiag в поле «Выполнить» и нажмите клавишу ВВОД.
    2. В следующем окне выберите Да.
    3. На вкладке «Вид» в разделе «Функции DirectX» убедитесь, что включены ускорение DirectDraw и ускорение Direct3D.

    Если у вас все еще есть ошибки с диагностическим инструментом DirectX, попробуйте загрузить последний дисплей драйверы с сайта производителя и снова запустите инструмент DxDiag.

    Проверка настроек вашего проигрывателя Windows Media

    Проблема может быть связана с Windows Media Player Настройки. Давайте сбросим настройки проигрывателя Windows Media и посмотрим, поможет ли он вам.

    Отключите проигрыватель Windows Media, включите его и проверьте состояние проблемы:

    Апрельское обновление 2020:

    Теперь мы рекомендуем использовать этот инструмент для вашей ошибки. Кроме того, этот инструмент исправляет распространенные компьютерные ошибки, защищает вас от потери файлов, вредоносных программ, сбоев оборудования и оптимизирует ваш компьютер для максимальной производительности. Вы можете быстро исправить проблемы с вашим ПК и предотвратить появление других программ с этим программным обеспечением:

    • Шаг 1: Скачать PC Repair & Optimizer Tool (Windows 10, 8, 7, XP, Vista — Microsoft Gold Certified).
    • Шаг 2: Нажмите «Начать сканирование”, Чтобы найти проблемы реестра Windows, которые могут вызывать проблемы с ПК.
    • Шаг 3: Нажмите «Починить все», Чтобы исправить все проблемы.

    а. Клавиша Windows + клавиша W для доступа к настройкам.

    б. Введите «Включить или отключить Windows» и нажмите Enter.

    с. Чтобы активировать функцию Windows, выберите и разверните Мультимедийные функции,

    д. Снимите флажок рядом с проигрывателем Windows Media, нажмите «ОК», перезагрузите компьютер.

    е. Чтобы включить функцию Windows, установите флажок рядом с проигрывателем Windows Media. Нажмите OK, затем перезагрузите компьютер.

    Выполните встроенный поиск неисправностей для оборудования и устройств.

    Это довольно простое решение, и оно автоматически проверяет, правильно ли установлено ваше новое оборудование.

    1. Сначала нажмите клавиши Windows + S на клавиатуре, чтобы открыть параметр поиска.
    2. Введите Устранение неполадок и нажмите Устранение неполадок.
    3. Нажмите «Оборудование и устройства», затем нажмите кнопку «Устранение неполадок».
    4. Следуйте инструкциям на экране для устранения неполадок.

    Обновление DirectX до последней версии

    Наиболее распространенной причиной этой проблемы является устаревшая версия DirectX. Вполне возможно, что причиной возникновения ошибки d3derr_notavailable (8876086A) является то, что в вашей операционной системе отсутствует необходимая среда для поддержки требуемого графического действия.

    Несколько затронутых пользователей сообщили, что смогли решить эту проблему, обновив версию DirectX с помощью веб-установщика DirectX для обновления вашей системы.

    Запуск программы / игры в режиме совместимости

    Если у вас есть эта проблема со старым приложением или игрой, вы можете решить ее без дальнейших действий, запустив основной исполняемый файл в режиме совместимости. Этот метод обычно считается эффективным в тех случаях, когда ошибка возникает в Windows 10.

    CCNA, веб-разработчик, ПК для устранения неполадок

    Я компьютерный энтузиаст и практикующий ИТ-специалист. У меня за плечами многолетний опыт работы в области компьютерного программирования, устранения неисправностей и ремонта оборудования. Я специализируюсь на веб-разработке и дизайне баз данных. У меня также есть сертификат CCNA для проектирования сетей и устранения неполадок.

    Ошибка Direct3D initialization error при запуске игры. Что делать?

    Один из типичных вопросов

    У меня в Windows 10 при запуске некоторых игр появляется ошибка «Direct3D initialization error». Windows шла вместе с ноутбуком, версия «Домашняя для одного языка». Скажите, может ли эта ошибка быть из-за версии Windows, и как ее исправить?

    Вообще, подобная ошибка не редкость, особенно после переустановки Windows (в вашем случае, после покупки ноутбука, так как в магазинах редко устанавливаются все необходимые библиотеки и драйвера, необходимые для комфортной работы устройства). Появляется она, как правило, после попытки запустить какую-нибудь игру — либо сразу, либо в игре будет просто черный экран, а свернув ее вы увидите это окно.

    В этой статье остановлюсь на основных причинах появления подобной ошибки, и покажу на примере как от нее избавиться.

    Типичный вид ошибки

    Что делать с ошибкой Direct3D.

    Обновление DirectX

    Самая частая причина появления подобной ошибки связана с отсутствием библиотеки DirectX. Причем, не обязательно, что она у вас не установлена, возможно у вас просто нет какого-то конкретного файла из библиотеки.

    DirectX — специальная библиотека для программистов. Используется в большинстве случаев при разработке игр. Пакет доступен для установки и обновления на официальном сайте Microsoft. Более подробно от этом можете узнать на сайте Википедии.

    Поэтому, рекомендую посмотреть требования запускаемой вами игры, и посмотреть, какая версия DirectX установлена у вас на ПК.

    Чтобы узнать, какой DirectX у вас на ПК, нажмите:

    1. сочетание кнопок Win+R, чтобы открылось окно » Выполнить «;
    2. далее впишите команду dxdiag и нажмите Enter (см. скриншот ниже).

    Запускаем средство диагностики DirectX (DxDiag)

    Далее во вкладке «Система» будут представлены все необходимые данные: версия вашей ОС Windows, ваша видеокарта, звуковое устройства, версия BIOS, и версия DirectX (см. на красный квадрат на скрине ниже) .

    Средство диагностики DirectX / Кликабельно

    Для обновления DirectX на сайте Microsoft есть специальный веб-установщик. Перейдите на нужную страницу и скачайте его. Далее запустите, согласитесь с условиями лицензионного соглашения, и ждите пока работает мастер.

    Принятие условий лиц. соглашения DirectX

    В конце операции вы должны увидеть сообщение о том, что установка DirectX завершена, нужные пакеты обновлены и пр. Либо, как вариант, мастер сообщит вам о том, что новая версия DirectX уже установлена и в обновлении не нуждается. Рекомендую после этого перезагрузить компьютер, а затем попробовать запустить игру.

    Установка DirectX завершена

    Как правило, после такого обновления, игра начинает работать как нужно.

    Если у вас нет интернета (либо он медленный или сайт Microsoft недоступен, выдает ошибку и т.д.), DirectX можно обновить с помощью игр: почти на половине дисков с играми есть новая версия DirectX (прим.: новая на момент запуска игры, конечно) . Поэтому, вам достаточно взять более-менее современную игру и установив ее, обновите DirectX.

    Проблема с драйвером видеокарты

    Если ошибка все так же появляется, возможно ваша видеокарта отключена в диспетчере устройств (такое может быть, например, у ноутбуков с 2-мя видеокартами), либо у вас просто не обновлены/не установлены драйвера на видеокарту.

    Как проверить наличие драйверов и включена ли видеокарта

    Самый простой способ, воспользоваться диспетчером устройств. Чтобы его открыть:

    1. нажмите кнопки Win+R;
    2. далее введите devmgmt.msc и нажмите Enter.

    Запуск диспетчера устройств — devmgmt.msc

    Далее откройте вкладку «Видеоадаптеры» , и посмотрите, все ли видеокарты включены, и не горит ли напротив них желтый восклицательный знак (указывающий на проблемы с драйверами, пример — ).

    Ниже на скриншоте показано, что один видеоадаптер отключен и не задействован. Часто ошибка с Direct3D связана как раз с этим.

    Intel HD включена, NVIDIA выключена

    Чтобы включить адаптер, просто щелкните по нему правой кнопкой мышки и выберите функцию «Задействовать» . Пример на скрине ниже.

    После этого перезагрузите компьютер, затем попробуйте открыть игру.

    В некоторых случаях одна из видеокарт может быть отключена в BIOS компьютера (например, если у вас на ноутбуке стоит дискретная и встроенная видеокарты) . Чтобы проверить так ли это, зайдите в BIOS, обычно, в разделе MAIN можно найти режим работы графики (Graphic mode). Пример показан на фото ниже.

    Как обновить драйвера на видеокарту:

    1. Способ №1 : зайти на официальный сайт производителя вашего ноутбука и скачать их оттуда. Если не знаете точную модель ноутбука, воспользуйтесь программами для определения характеристик компьютера — https://ocomp.info/harakteristiki-kompyutera.html
    2. Способ №2 : воспользоваться специальными программами для автоматического поиска и обновления драйверов. Самый простой и быстрый вариант, на самом деле. К тому же, программы проверят необходимые библиотеки для игр (например, Drive Booster, рекомендую) — https://ocomp.info/update-drivers.html
    3. Способ №3 : работать в ручном режиме, через диспетчер устройств. Более подробно об этом см. здесь: https://ocomp.info/kak-nayti-i-ustanovit-drayver-dlya-neizvestnogo-ustroystva.html

    Используйте режим совместимости

    Не так давно я тестировал ноутбук с относительно новым процессором AMD Ryzen 5 2500U и столкнулся с одной интересной особенностью.

    Обновил DirectX, установил все необходимые драйвера, различные пакеты и дополнения к играм — однако, часть игр не запускалась, показывая ошибку Direct3D. (особенность: все игры были старыми, что наводило на разные мысли. ) .

    Довольно сильно я был удивлен, когда открыл свойства исполняемого файла игры, перешел во вкладку «Совместимость» и поставил галочку напротив пункта «Запустить игру в режиме совместимости с Windows XP SP 2» — игра стала нормально работать, никаких ошибок, связанных с Direct3D, больше не было.

    Примеры, что нужно сделать, приведены на скринах ниже.

    Открываем свойства исполняемого файла игры

    Запустить игру в режиме совместимости с Windows XP SP 2

    PS

    Если ничего не помогло из выше написанного, то также рекомендую еще обновить пакет Microsoft Visual C++ и NET Framework.

    На этом все, всем всего доброго!

    Статья откорректирована: 17.01.2019

    Ошибка d3derr notavailable 0x8876086A при просмотре видео

    Ошибка d3derr notavailable 0x8876086A при просмотре видео

    Всем привет, сегодня рассказываю как решить ошибку d3derr notavailable 0x8876086A при просмотре видео. Появляется она при запуске видео файла, вы ее закрываете и дальше идет воспроизведение, вроде все работает, но постоянная ошибка напрягает, да и не красиво это постоянно красноту видеть и на исправление то уходит две минуты.

    Ошибка 0x8876086a

    Давайте более наглядно взглянем на error 0x8876086a. Выскакивает она у меня в Windows 8.1, в программе Media Player Classic.

    Что нужно сделать, что бы этого окна с сообщением d3derr notavailable больше не выскакивало. Требуется переустановка кодеков K-Lite. Заходите на официальный сайт codecguide.com. Выбираем нужную версию K-Lite кодеков, я обычно качаю Mega.

    После скачивания дистрибутива, запускаем его. Вам подскажут, что у вас есть старая версия и ее бы хорошо удалить, говорим Да.

    Начнется процесс удаления старой версии кодеков.

    Через минуту у вас появится мастер установки k-Lite, щелкаем next.

    Выбираем Preferred video player, предпочтительный проигрыватель.

    Задаем язык программы.

    Далее можете выбрать аудио декодер.

    По идее бы все пошла установка устраняющая ошибку d3derr notavailable 0x8876086A при просмотре видео, но тут немного рекламы, вам попытаются в парить утилиту AdBlock. Если хотите, ставьте, я жму Decline.

    Все наконец то жмем заветную кнопку Install и производим переустановку кодеков.

    Вам подскажут, что обнаружены проблемы в реестре Windows, и требуется внести обновления, жмем Да.

    Подтверждаем каждое изменение, с удалением плохих.

    Все установка закончена, так и закончена ваша ошибка createdevice failed error code 0x8876086a.

    Если есть вопросы пишите в комментариях.

    Читать еще:  Обработчик ошибок в vba
  • Ссылка на основную публикацию
    Adblock
    detector