0

誰かが次の 2 つのクラッシュ例外を説明できますか! それらを修正する方法を理解できません -

フレーム イメージ関数のオフセット
0 coredll.dll xxx_RaiseException 19
1 mscoree3_7.dll 436488
2 mscoree3_7.dll 386545
3 mscoree3_7.dll 540936
4 TransitionStub 0
5 MS.Internal.XcpImports.CheckHResult 100
6 MS.Internal.XcpImports.MessageBox_ShowCore 112
7 System.Windows.MessageBox.ShowCore 272
8 PhotoRotator.TransformedImage.SaveButton_Click 504
9 Microsoft.Phone.Shell.ApplicationBarItemContainer.FireEventHandler 292
10 Microsoft.Phone.Shell.ApplicationBarIconButton.ClickEvent 88
11 Microsoft. Phone.Shell.ApplicationBarIconButtonContainer.ClickEvent 60
12 Microsoft.Phone.Shell.ApplicationBar.OnCommand 160
13 Microsoft.Phone.Shell.Interop.NativeCallbackInteropWrapper.OnCommand 72
14 mscoree3_7.dll 429164
15 mscoree3_7.dll 430528
16 mscoree3_7.dll 610803
17 mscoree3_7.dll 393257
18 0
19 corex.dll ApplicationBarInterop::ApplicationBarCallback5::OnCommand 1

特定のコードは以下のように示されています -

private void SaveButton_Click(object sender, EventArgs e)
        {
            WriteableBitmap wb = new WriteableBitmap(SelectedImage.TransformedImage);
            MemoryStream targetStream = new MemoryStream();  

            wb.SaveJpeg(targetStream, wb.PixelWidth, wb.PixelHeight, 0, 100);

            if (targetStream != null)
            {
                targetStream.Seek(0, 0); // necessary to initiate the stream correctly before save

                try
                {
                    MediaLibrary ml = new MediaLibrary();
                    Picture p = ml.SavePicture(Guid.NewGuid().ToString(), targetStream);
                    MessageBox.Show("Saved Successfully to your Media Library!");
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error - " + ex.Message);
                }
            }
            else
            {
                MessageBox.Show("Unexpected error!");
            }
        }

2枚目→

フレーム イメージ関数のオフセット
0 coredll.dll xxx_RaiseException 19
1 mscoree3_7.dll 436488
2 mscoree3_7.dll 386545
3 mscoree3_7.dll 540936
4 TransitionStub 0
5 Microsoft.Xna.Framework.Helpers.ThrowExceptionFromErrorCode 80
6 Microsoft.Xna.Framework.Media.MediaLibrary.GetPictureFromToken 280
7 PhotoRotator.MainPage.OnNavigatedTo 216
8 Microsoft.Phone.Controls.PhoneApplicationPage.InternalOnNavigatedTo 288
9 System.Windows.Navigation.NavigationService .RaiseNavigated 488
10 System.Windows.Navigation.NavigationService.CompleteNavigation 812
11 System.Windows.Navigation.NavigationService.ContentLoader_BeginLoad_Callback 968
12 System.Windows.Navigation.PageResourceContentLoader.BeginLoad_OnUIThread 1108
13 ._ c _DisplayClass4._BeginLoad_b__0 64
14 mscoree3_7.dll 429164
15 mscoree3_7.dll 185803 14
dll 16.ms
17 System.Reflection.RuntimeMethodInfo.InternalInvoke 112
18 System.Reflection.RuntimeMethodInfo.InternalInvoke 1560
19 System.Reflection.MethodBase.Invoke 104

このためのコードは ->

protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            if (e.NavigationMode == NavigationMode.New)
            {
                // Get a dictionary of query string keys and values.
                IDictionary<string, string> queryStrings = this.NavigationContext.QueryString;

                // Ensure that there is at least one key in the query string, and check whether the "token" key is present.
                if (queryStrings.ContainsKey("token"))
                {
                    // Retrieve the picture from the media library using the token passed to the application.
                    MediaLibrary library = new MediaLibrary();
                    Picture picture = library.GetPictureFromToken(queryStrings["token"]);

                    // Create a WriteableBitmap object and add it to the Image control Source property.
                    BitmapImage bitmap = new BitmapImage();
                    bitmap.CreateOptions = BitmapCreateOptions.None;
                    bitmap.SetSource(picture.GetImage());

                    //WriteableBitmap picLibraryImage = new WriteableBitmap(bitmap);
                    //retrievePic.Source = picLibraryImage;

                    SelectedImage.OriginalImage = bitmap;

                    navigateCompleted(null, null);
                    //NavigationService.Navigate(HelperClass.Constants.TransformPageUri);
                    //NavigationService.Navigated -= new NavigatedEventHandler(navigateCompleted);
                }
            }
4

1 に答える 1

0

コードを追加してください。ただし、最初の例外は、保存ボタンのクリックイベントでエラーが発生したようです。

8 PhotoRotator.TransformedImage.SaveButton_Click 504

ステップバイステップでデバッグしてみてください。コードを教えてください

于 2012-07-01T11:12:04.660 に答える