Как получить доступ к IRandomAccessStreamReference ^ из настольного приложения / DLL - PullRequest
0 голосов
/ 01 мая 2019

Я пишу библиотеку dll для доступа к информации о воспроизводимых в настоящее время файлах через API Windows :: Media :: Control UWP, весь API-интерфейс - DualApiPartition, однако GlobalSystemMediaTransportControlsSessionMediaProperties ^ имеет свойство «Thumbnail», которое является IRandomAccessStreamReference ^. Можно ли получить доступ к этому файлу из настольного приложения c ++ / dll, учитывая, что apis Windows :: Storage :: Streams, похоже, зарезервированы для хранения приложений?

Я пытался использовать задачу OpenReadAsync (), но она навсегда зависает как AsyncStatus :: Started.

    event otwartostrumien;
    otwartostrumien.reset();
    IRandomAccessStreamWithContentType^ strumienThumbnaila;
    cout << "testa";
    create_task(wlasciwosci->Thumbnail->OpenReadAsync()).then([&otwartostrumien, &strumienThumbnaila](IRandomAccessStreamWithContentType^ strumien) {
        cout << "testb";
        strumienThumbnaila = strumien;
        otwartostrumien.set();
    });
    otwartostrumien.wait();
    otwartostrumien.reset();

Для справки этот код только печатает "testa" и висит

...