C
Cobra91151Jan. 2, 2018, 11:31 a.m.

Qt с UWP API

c++, qt, uwp

Здравствуйте! Я хочу разработать программу UWP на Qt 5.9.3. У меня уже все Qt UWP киты установлены и настроены, но проблема в том что не получается вызвать любой класс UWP API. Вот пример:

.h

#include <winrt/windows.devices.enumeration.h>
#pragma comment(lib, "windowsapp")
using namespace winrt;
using namespace winrt::Windows::Devices::Enumeration;
.cpp
init_apartment(); //this initializes com
DeviceInformationCollection infos = DeviceInformation::FindAllAsync().get();
for (const auto &info : infos) {
     qDebug() << QString::fromWCharArray(info.Name().c_str());
}
Загрузил https://github.com/Microsoft/cppwinrt и добавил в .pro:
INCLUDEPATH += "C:/Users/cobra/Downloads/Downloads Data/cppwinrt/10.0.16299.0"

Получается что только на AMRV7 компилирует. На x32/x64 выбрасывает много ошибок: 

Ta4rP.jpg
We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.

Do you like it? Share on social networks!

6
C
  • Jan. 2, 2018, 11:33 a.m.

Как думаете в чем может быть проблема? Спасибо заранее.

    Evgenii Legotckoi
    • Jan. 2, 2018, 4:17 p.m.

    День добрый!

    У вас там случаем в вашем коде нет точки с запятой где-нибудь в неположенном месте?
    Например, так
    int main();
    {
    }
    Теоретически ошибок быть не должно, но кто знает... проанализируйте свой код как следует.
    Может при разных платформах как-то некорректно игнорируется какой-нибудь define, в результате чего появляется лишняя точка с запятой.
      C
      • Jan. 3, 2018, 3:24 a.m.

      Я проверил, без UWP API, программа компилируется на x32/x64. Дело было в другом, я установил разшерение Qt на Visual Studio, добавил там проект и при компиляции там пишет что минимум 10.0.14393.0  версия Win SDK должна быть (так как была 8.1), изменил, не помогло, установил версию Win SDK на 10.0.16299.0 так как файлы идут с  папки cppwinrt, а там только для 10.0.16299.0 . Все компилируется но проблема при запуске. Получается что программа крашится при старте, даже если это пустой проект. Через Debugger не могу проверить так как ResultMacros.h не найден. Спасибо за помощь.

        C
        • Jan. 3, 2018, 4:09 a.m.

        Странно, если скомпилировать пустой проект на Qt тогда он запускается. А на Visual Studio проблема с Windows.UI.Xaml.dll библиотекой. Через нее идет сбой.

          Evgenii Legotckoi
          • Jan. 3, 2018, 3:49 p.m.

          Возможно, что-то не подключено для Qt в рамках настроек Visual Studio. Не знаю, вообще не работаю с Visual Studio, я её только ради MSVC обычно ставлю.

            C
            • Jan. 4, 2018, 5:06 a.m.

            Понятно. Видимо придется мне UWP прогу делать на VS. Спасибо.

              Comments

              Only authorized users can post comments.
              Please, Log in or Sign up
              AD

              C ++ - Test 004. Pointers, Arrays and Loops

              • Result:50points,
              • Rating points-4
              m

              C ++ - Test 004. Pointers, Arrays and Loops

              • Result:80points,
              • Rating points4
              m

              C ++ - Test 004. Pointers, Arrays and Loops

              • Result:20points,
              • Rating points-10
              Last comments
              Evgenii Legotckoi
              Evgenii LegotckoiNov. 1, 2024, 12:37 a.m.
              Django - Lesson 064. How to write a Python Markdown extension Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
              A
              ALO1ZEOct. 19, 2024, 6:19 p.m.
              Fb3 file reader on Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
              ИМ
              Игорь МаксимовOct. 5, 2024, 5:51 p.m.
              Django - Lesson 064. How to write a Python Markdown extension Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
              d
              dblas5July 5, 2024, 9:02 p.m.
              QML - Lesson 016. SQLite database and the working with it in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
              k
              kmssrFeb. 9, 2024, 5:43 a.m.
              Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
              Now discuss on the forum
              m
              moogoNov. 22, 2024, 6:17 p.m.
              Mosquito Spray System Effective Mosquito Systems for Backyard | Eco-Friendly Misting Control Device & Repellent Spray - Moogo ; Upgrade your backyard with our mosquito-repellent device! Our misters conce…
              Evgenii Legotckoi
              Evgenii LegotckoiJune 25, 2024, 1:11 a.m.
              добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
              t
              tonypeachey1Nov. 15, 2024, 5:04 p.m.
              google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
              NSProject
              NSProjectJune 4, 2022, 1:49 p.m.
              Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…

              Follow us in social networks