小编Yuz*_*hou的帖子

从 C# .net 框架 4.7.2 和 Microsoft.Windows.SDK.Contracts 使用 FileOpenPicker 时出现“无效窗口句柄”错误,没有 UWP

我正在尝试使用 Microsoft.Windows.SDK.Contracts 从 .net 框架 WFP 应用程序访问 Windows10 API。我想使用 FileOpenPicker() 来选择图像以供 Windows.Media.Ocr 进行 OCR 处理。但是我在使用选择器时遇到了“无效的窗口句柄”错误

我发现了一个帖子,它遇到了与 C++/WinRT类似的链接问题。其中一个答案指出“程序会崩溃,因为 FileOpenPicker 在当前线程上寻找一个 CoreWindow 作为对话框的所有者。但我们是一个没有 CoreWindow 的 Win32 桌面应用程序。” 我认为根本原因是一样的。但我不知道如何从基于 .net 框架端的代码中修复。

public async void Load()
{
    var picker = new FileOpenPicker()
    {
        SuggestedStartLocation = PickerLocationId.PicturesLibrary,
        FileTypeFilter = { ".jpg", ".jpeg", ".png", ".bmp" },
    };

    var file = await picker.PickSingleFileAsync();
    if (file != null)
    {

    }
    else
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

错误消息:System.Exception:'无效的窗口句柄。(来自 HRESULT 的异常:0x80070578)'

c# wpf winforms fileopenpicker

5
推荐指数
1
解决办法
1401
查看次数

标签 统计

c# ×1

fileopenpicker ×1

winforms ×1

wpf ×1