2017-06-06 28 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"