Russian Qt Forum
Ноябрь 23, 2024, 04:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: черный квадрат вместо QQuickWidget  (Прочитано 4337 раз)
Qyrychen
Гость
« : Апрель 29, 2016, 16:38 »

доброго времени суток

используем qt 5.6
имеется приложение на виджетах, но в одном плагинчике мы используем QML (используем через QQuickWidget )
QQuickWidget* quickWidget = new QQuickWidget(this);
quickWidget->setSource(QUrl(QStringLiteral("qrc:/Resources/WebResources/main.qml")));

При определенных условиях  вместо этого виджета получаем черный квадрат.
Библиотеки libEGL.dll, libGLESv2.dll, d3dcompiler_47.dll и opengl32sw.dll лежат возле экзешника.
Также пытались играться флагом Qt::AA_UseSoftwareOpenGL, но результатов не дало.
Стабильно получается зарепродюсить запуская приложение на виртуальной машине с Win7. Исправить проблему получается путем добавления виртуалке RemoteFX 3D video adapter. Но можно ли как-то обойтись без этого?

П.С. Вот что показывает WinDBG после создания QQuickWidget
ModLoad: 6ee10000 6ee18000   C:\Users\admin\Desktop\Release\Win32\QtQuick.2\qtquick2plugin.dll
ModLoad: 66c50000 66cfd000   C:\Users\admin\Desktop\Release\Win32\QtQuick\Controls\qtquickcontrolsplugin.dll
ModLoad: 6ee00000 6ee08000   C:\Users\admin\Desktop\Release\Win32\QtQuick\Window.2\windowplugin.dll
ModLoad: 656a0000 65863000   C:\Windows\system32\d3d9.dll
ModLoad: 749b0000 749b9000   C:\Windows\system32\VERSION.dll
ModLoad: 6edf0000 6edf6000   C:\Windows\system32\d3d8thk.dll
ModLoad: 662f0000 663b8000   C:\Windows\system32\opengl32.dll
ModLoad: 6dc80000 6dca2000   C:\Windows\system32\GLU32.dll
ModLoad: 655b0000 65697000   C:\Windows\system32\DDRAW.dll
ModLoad: 6edd0000 6edd6000   C:\Windows\system32\DCIMAN32.dll
ModLoad: 6d7f0000 6d7f7000   C:\Users\admin\Desktop\Release\Win32\libEGL.DLL
ModLoad: 65420000 655ac000   C:\Users\admin\Desktop\Release\Win32\libGLESv2.dll
ModLoad: 650c0000 65416000   C:\Users\admin\Desktop\Release\Win32\d3dcompiler_47.dll
ModLoad: 74550000 745d3000   C:\Windows\system32\dxgi.dll
ModLoad: 66bc0000 66c43000   C:\Windows\system32\d3d11.dll
ModLoad: 75730000 7575d000   C:\Windows\system32\WINTRUST.dll
ModLoad: 64d60000 650b6000   C:\Users\admin\Desktop\Release\Win32\d3dcompiler_47.dll
ModLoad: 74550000 745d3000   C:\Windows\system32\dxgi.dll
ModLoad: 66260000 662e3000   C:\Windows\system32\d3d11.dll
ModLoad: 650c0000 65416000   C:\Users\admin\Desktop\Release\Win32\d3dcompiler_47.dll
QWindowsEGLStaticContext::create: Could not initialize EGL display: error 0x3001
QWindowsEGLStaticContext::create: When using ANGLE, check if d3dcompiler_4x.dll is available
ModLoad: 64530000 65411000   C:\Users\admin\Desktop\Release\Win32\opengl32sw.dll
ModLoad: 75a80000 75aaa000   C:\Windows\system32\imagehlp.dll
ModLoad: 6da80000 6db6b000   C:\Windows\system32\dbghelp.dll
Записан
BuRn
Гость
« Ответ #1 : Июнь 09, 2016, 19:20 »

Собрать с сырцов скорее всего, других вариантов у вас нет
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 20.