2017-06-06 29 views
1

我正在开发一个应用程序以在WinPE上运行。我使用C#和WPF(.Net Framework 4.5)如何使用FileOpenDialog和WinPE中的图像使用C#WPF

但我面临一些问题。

我想使用选择文件使用FileOpenDialog。它不是在WinPE的操作(6.3版本)

我尝试了两种方式来使用FileOpenDialog

  1. System.Windows.Forms.FileOpenDialog - 不发梗任何
  2. Microsoft.Win32.FileOpenDialog - 异常发生

的另一个问题是Image 。 我想使用图像,但不会出现一些图像。

图像有1KB以下的小尺寸正常出现。但图像大小超过400KB不会出现在屏幕上。

所有功能通常在Windows 10上运行但是这些问题只出现在WinPE中。

我该如何解决这些问题?

回答

0

为了让fileDialog运行,您需要从正在运行的Windows 10系统中复制ExplorerFrame.dll。该文件位于system32文件夹中。关注建筑。

您还需要将以下注册表修改添加到您的WinPE注册表中。这在几个月前帮助我解决了同样的问题。根据您的应用程序,您需要安装WinPE-WMI.cab,WinPE-PowerShell.cab,WinPE-NetFx.cab及其语言包。这些可以在MS ADK中找到。

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SW\Classes\CLSID\{AE054212-3535-4430-83ED-D501AA6680E6}] 
@="Shell Name Space ListView" 

[HKEY_LOCAL_MACHINE\SW\Classes\CLSID\{AE054212-3535-4430-83ED-D501AA6680E6}\InProcServer32] 
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 
    00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,65,00,78,00,\ 
    70,00,6c,00,6f,00,72,00,65,00,72,00,66,00,72,00,61,00,6d,00,65,00,2e,00,64,\ 
    00,6c,00,6c,00,00,00 
"ThreadingModel"="Apartment"