FileOpenPicker (ModernUI xaml/c#) に問題があります。Web から選択した一部の写真の場合、エラーなしで「StorageFile」が返されますが、OpenAsync で開こうとすると、システムが FileNotFoundException をスローします。特に、Facebook から古い写真を拾う場合、これが常に発生することに気付きました。
SDKサンプルアプリ「XAML画像サンプル」を使えば簡単に再現できます。アプリを起動して「Facebook」から画像を取得し、最新の画像が問題なく開いていることに気付いたので、古い画像を取得してください。
より具体的には、実際にその例外をスローするコードの平和を見つけてください。
// Open a stream for the selected file
StorageFile file = await open.PickSingleFileAsync();
// Ensure a file was selected
if (file != null)
{
// Ensure the stream is disposed once the image is loaded
// !!! Here exception is thrown if you pickup some old file from facebook !!!
using (IRandomAccessStream fileStream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read))
{
// Set the image source to the selected bitmap
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.DecodePixelHeight = decodePixelHeight;
bitmapImage.DecodePixelWidth = decodePixelWidth;
await bitmapImage.SetSourceAsync(fileStream);
Scenario2Image.Source = bitmapImage;
}
}
提案と助けを前もってありがとう
敬具
MG