Ошибка всплывающего окна приложения QtWebEngine 0xc0000022 при запуске из сети - PullRequest
0 голосов
/ 05 мая 2020

Я разработал приложение на основе Windows x64 Qt 5.14.2 widgets, которое использует QtWebEngine для рендеринга JavaScript google maps на одной из вкладок. Я задал подробный вопрос здесь , однако ответ и комментарии не помогли мне решить проблему. Кажется, что решение заключалось в том, чтобы запустить приложение локально, но мне действительно нужно иметь возможность запускать приложение из общего сетевого ресурса. В более ранних версиях Qt (например, 5.13 и 5.12) эта проблема с развертыванием не возникала, что ограничивало его запуск из общего сетевого ресурса. локальная папка на моем жестком диске, однако, если я запускаю приложение из папки на моем NAS-сервере \\ QNAP \ MyShare \ MyApp.exe (с использованием протокола SMB), запускается приложение с несколькими вкладками, однако появляется всплывающее окно сообщения указывая, что не может найти Qt5Core.dll. Если вместо этого я открываю командное окно и запускаю приложение из каталога, содержащего приложение (а также Qt5Core.dll), приложение запускается и отображает код ошибки 0xc0000022, указывающий, что QtWebEngineProcess не может запуститься. После того, как я разработал приложение, я развернул его через windeployqt и сохранил эту папку на моем общем сетевом хранилище. Развернутые файлы также включают QtWebEngineProcess.exe и все другие соответствующие Qt5 * .dll.

Я подозреваю, что проблема может быть связана с разрешениями, но я не уверен. Я прочитал и экспериментировал с различными советами в документации Qt на Развертывание процессов Qt WebEngine , но я не могу найти там очевидного решения. Мои зависимости приложения следующие:

Dump of file app739.exe

File Type: EXECUTABLE IMAGE

  Image has the following dependencies:

    BTI42964.dll
    Qt5WebEngineWidgets.dll
    Qt5Widgets.dll
    Qt5Gui.dll
    Qt5WebChannel.dll
    Qt5SerialPort.dll
    Qt5Core.dll
    KERNEL32.dll
    MSVCP140.dll
    WS2_32.dll
    BTICard64.dll
    VCRUNTIME140.dll
    VCRUNTIME140_1.dll
    api-ms-win-crt-runtime-l1-1-0.dll
    api-ms-win-crt-heap-l1-1-0.dll
    api-ms-win-crt-string-l1-1-0.dll
    api-ms-win-crt-math-l1-1-0.dll
    api-ms-win-crt-convert-l1-1-0.dll
    api-ms-win-crt-stdio-l1-1-0.dll
    api-ms-win-crt-locale-l1-1-0.dll
    api-ms-win-crt-filesystem-l1-1-0.dll
    api-ms-win-crt-time-l1-1-0.dll
    api-ms-win-crt-utility-l1-1-0.dll
    SHELL32.dll

  Summary

        B000 .data
       13000 .pdata
       FC000 .rdata
        3000 .reloc
       4C000 .rsrc
      1B2000 .text
...