首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何等待UWP/WinRT中的FileOpenPicker显示并从用户获取所选文件?(C++代码)

如何等待UWP/WinRT中的FileOpenPicker显示并从用户获取所选文件?(C++代码)
EN

Stack Overflow用户
提问于 2022-10-02 14:59:27
回答 1查看 96关注 0票数 0

我是新来的UWP/WinRT!

我有这样的代码:

代码语言:javascript
运行
复制
void MainPage::processButton_Click(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::RoutedEventArgs const& e)
    {
        winrt::Windows::Storage::Pickers::FileOpenPicker picker;
        picker.ViewMode(winrt::Windows::Storage::Pickers::PickerViewMode::Thumbnail);
        picker.FileTypeFilter().Append(L".mp4");
        auto filename= picker.PickSingleFileAsync().GetResults();           
       
    }

当我运行这段代码时,我在运行时得到了这个错误:

在__debugbreak中执行断点指令(__debugbreak()语句或类似的调用)。

将代码更改为此代码:

代码语言:javascript
运行
复制
void MainPage::processButton_Click(winrt::Windows::Foundation::IInspectable const& sender, winrt::Windows::UI::Xaml::RoutedEventArgs const& e)
    {
        winrt::Windows::Storage::Pickers::FileOpenPicker picker;
        picker.ViewMode(winrt::Windows::Storage::Pickers::PickerViewMode::Thumbnail);
        picker.FileTypeFilter().Append(L".mp4");
        auto filename= picker.PickSingleFileAsync().GetResults();
        
    }

产生同样的错误。

如何等待选择器完成它的工作并返回我可以在C++ UWp/WinRT中打开的文件?

EN

Stack Overflow用户

发布于 2022-10-02 19:06:45

当您试图在尚未运行到完成的GetResults上调用IAsyncOperation时,会引发您得到的诊断。

为了解决这个问题,您需要异步地等待操作完成。最直接的方法是使用协同线。使用C++/WinRT的并发和异步操作拥有您所需的所有信息。

通过将代码更改为以下内容,可以将其应用于代码:

代码语言:javascript
运行
复制
IAsyncAction MainPage::processButton_Click(IInspectable sender, RoutedEventArgs e)
{
    winrt::Windows::Storage::Pickers::FileOpenPicker picker;
    picker.ViewMode(winrt::Windows::Storage::Pickers::PickerViewMode::Thumbnail);
    picker.FileTypeFilter().Append(L".mp4");
    auto filename = co_await picker.PickSingleFileAsync();
}

确保将签名从引用更改为按值接收参数。如果你不这样做,事情就会以完全难以诊断的方式破裂。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73926853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档