如何从桌面应用程序/ dll访问IRandomAccessStreamReference ^

时间:2019-05-01 16:46:24

标签: c++ dll windows-10 win-universal-app

我正在编写一个DLL库,用于通过Windows :: Media :: Control UWP API访问有关当前播放文件的信息,整个api是DualApiPartition,但是GlobalSystemMediaTransportControlsSessionMediaProperties ^具有“ Thumbnail”属性,它是IRandomAccessStreamReference ^。考虑到Windows :: Storage :: Streams api似乎保留用于存储应用程序,是否可以从c ++桌面应用程序/ dll访问该文件?

我尝试使用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”并挂起

0 个答案:

没有答案