使用 .Net 3.1 的 WPF - 进程启动 Excel 文件错误:"The specified executable is not a valid application for this OS



我正试图在WPF.NET Core 3.1应用程序中打开Excel文件(.xlsx(。使用Winforms,我可以进行

process.start("Resources/test.xlsx")

文件将打开。

在WPF应用程序中,做同样的事情会导致错误

指定的可执行文件不是此操作系统平台的有效应用程序

我使用相同的代码,并使用两个应用程序打开相同的文件。只有Winforms应用程序才能工作,WPF将抛出该错误。

有没有一种新的打开文件的方法是使用.Net 3中的System.Diagnostics.Process.Start处理的?

类似的东西

private void barButtonItem4_ItemClick(object sender, ItemClickEventArgs e)
{
// Old way (.NET Framework 4.8)
// string path = "Resources/test.xlsx";
// Process.Start(path);
// New way (.NET 6)
ProcessStartInfo psInfo = new ProcessStartInfo
{
FileName = "Resources/test.xlsx",
UseShellExecute = true
};
Process.Start(psInfo);
}

进一步观察,在.Net Core中,UseShellExecute值似乎默认为false。手动将其设置为true解决了此问题。以下是我用来发现此修复程序的博客文章:https://jeremybytes.blogspot.com/2019/08/converting-net-framework-to-net-core.html

相关内容

  • 没有找到相关文章

最新更新