Visual Studio tambah pasang crash dengan pesan galat "TargetInvocationException"

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 2923556 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Gejala

Ketika menjalankan tambah pasang atau integrasi paket, Microsoft Visual Studio 2013 dapat tiba-tiba menghentikan dengan pengecualian tidak tertangani jenis System.Reflection.TargetInvocationException.

Dalam aplikasi Event log, Anda akan melihat kesalahan aplikasi dengan teks yang mirip dengan:

nama aplikasi faulting: devenv.exe, versi: 12.0.21005.1, cap waktu: 0x524fcb34
Nama modul faulting: KERNELBASE.dll, versi: 6.1.7601.18229, cap waktu: 0x51fb10c6
Pengecualian kode: 0xe0434352
Kesalahan offset: 0x0000812f
Faulting proses id: 0xe3c
Patahan aplikasi waktu mulai: 0x01cf0b21c6346ea8
Faulting jalan aplikasi: 12.0\Common7\IDE\devenv.exe C:\Program program Visual Studio
Faulting modul jalan: C:\Windows\system32\KERNELBASE.dll

Thisis peranti penangkap diikuti JASS acara dengan .NET Runtime sebagai sumber withtext yang mirip dengan:

Aplikasi: devenv.exe
Kerangka versi: v4.0.30319
Keterangan: Proses dihentikan karena eksepsi tidak tertangani.
Pengecualian Info: System.Reflection.TargetInvocationException
Tumpukan:
di System.RuntimeMethodHandle.InvokeMethod (System.Object, System.Object [], System.Signature, Boolean)
di System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (System.Object, System.Object [], System.Object[])
di System.Delegate.DynamicInvokeImpl(System.Object[])
di System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32)
pada MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)
di System.Windows.Threading.DispatcherOperation.InvokeImpl()
di System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
di System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
di System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
di System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
di System.Windows.Threading.DispatcherOperation.Invoke()
di System.Windows.Threading.Dispatcher.ProcessQueue()
di System.Windows.Threading.Dispatcher.WndProcHook (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
pada MS.Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
pada MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
di System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32)
pada MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)
di System.Windows.Threading.Dispatcher.LegacyInvokeImpl (System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
pada MS.Win32.HwndSubclass.SubclassWndProc (IntPtr, Int32, IntPtr, IntPtr)

Penyebab

Thisissue terjadi karena kode berubah dalam Visual Studio IDE pada tahun 2013 dan mempengaruhi kumpulan dokumen yang tidak sah jalan nama seperti yang diuraikan oleh kelas .NET System.IO.File. Visual Studio mungkin melemparkan System.ArgumentException ketika membuka dokumen-dokumen ini yang menggelegak melalui IDE sebagai TargetInvocationException.

Pemecahan masalah

Anda dapat menghindari atau bekerja di sekitar masalah dengan memastikan bahwa nama kumpulan dokumen yang sah Win32 nama file.

Masalah ini telah diperbaiki dalam Visual Studio 2013 Update 2 dan versi Visual Studio.

Informasi lebih lanjut

Contoh panggilan tumpukan TargetInvocationException ditunjukkan di bawah. Ini adalah dari berkas dump proses ditangkap pada pengecualian tidak tertangani dan ditampilkan dalam WindDdbg debugger menggunakan ekstensi SOS untuk menampilkan dikelola pengecualian panggilan tumpukan:


CLR pengecualian tipe: System.Reflection.TargetInvocationException
"Pengecualian telah dilemparkan oleh target doa."
Kesalahan: Simbol file tidak dapat ditemukan. Gagal untuk mengekspor simbol untuk C:\Windows\system32\KERNELBASE.dll-
eax = 0027eb88 ebx = 00000005 ecx = 00000005 edx = 00000000 esi = 0027ec48 edi = 00000001
EIP = 7528812f esp = 0027eb88 ebp = 0027ebd8 iopl = 0 nv up ei pl nz ac pe nc
CS = 001b ss = 0023 ds = 0023 es = gs 0023 fs = 003b = 0000 efl = 00200216
KERNELBASE!RaiseException + 0x54:
Tinggalkan c9 7528812f
0:000 mengatakan! loadby sos clr
0:000 mengatakan! sos.PrintException
Pengecualian objek: 136eb7f8
Jenis pengecualian: System.Reflection.TargetInvocationException
Pesan: Pengecualian telah dilemparkan oleh target doa.
InnerException: System.ArgumentException, menggunakan!PrintException 136e9f10 untuk melihat lebih banyak.
StackTrace (dihasilkan):
SP IP fungsi
00000000 00000001 mscorlib_ni!System.RuntimeMethodHandle.InvokeMethod (System.Object, System.Object [], System.Signature, Boolean) + 0x2
0033BEC8 60D99BC1 mscorlib_ni!System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (System.Object, System.Object [], System.Object[])+0xc1
0033BEEC 60D904B6 mscorlib_ni!System.Delegate.DynamicInvokeImpl ([System.Object]) + 0x76
0033BF00 6079C5BD WindowsBase_ni!System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32) + 0xad
0033BF20 6079C49A WindowsBase_ni! MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)+0x3a
0033BF64 6079EE4C WindowsBase_ni!(System.Windows.Threading.DispatcherOperation.InvokeImpl) + 0xac
0033BF9C 6079ED88 WindowsBase_ni!System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext (System.Object) + 0x38
0033BFA4 60E14157 mscorlib_ni!System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) + 0xa7
0033 C 010 60E14096 mscorlib_ni!System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) + 0x16
0033 C 024 60E14051 mscorlib_ni!System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)+0x41
0033C03C 6079EC9B WindowsBase_ni!(System.Windows.Threading.DispatcherOperation.Invoke) + 0x5b
0033C 074 6079B21B WindowsBase_ni!(System.Windows.Threading.Dispatcher.ProcessQueue) + 0x16b
0033C0B8 6079B3DA WindowsBase_ni!System.Windows.Threading.Dispatcher.WndProcHook (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) + I2C
0033 C 104 6079C75B WindowsBase_ni! MS.Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) + 0x9b
WindowsBase_ni 140 6079C6AB C 0033! MS.Win32.HwndSubclass.DispatcherCallbackOperation (System.Object) + 0x6b
0033C 150 6079C 562 WindowsBase_ni!System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32) + 0x52
0033 C 170 6079C49A WindowsBase_ni! MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)+0x3a
0033C1B4 6079AABE WindowsBase_ni!System.Windows.Threading.Dispatcher.LegacyInvokeImpl (System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) + 0x10e
WindowsBase_ni 208 6079BFF1 0033 C! MS.Win32.HwndSubclass.SubclassWndProc (IntPtr, Int32, IntPtr, IntPtr) + 0xf1
00000000 00000001 System_Windows_Forms_ni!System.Windows.Forms.UnsafeNativeMethods+IMsoComponentManager.FPushMessageLoop (IntPtr, Int32, Int32) + 0x2
0033C4D8 5C35DFC7 System_Windows_Forms_ni!System.Windows.Forms.ComponentManagerProxy.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop (IntPtr, Int32, Int32) + 0x27
0033C4F0 5BBBF8D1 System_Windows_Forms_ni!System.Windows.Forms.Application+ThreadContext.RunMessageLoopInner (Int32, System.Windows.Forms.ApplicationContext)+0x155
0033 C 540 5BBBF742 System_Windows_Forms_ni!System.Windows.Forms.Application+ThreadContext.RunMessageLoop (Int32, System.Windows.Forms.ApplicationContext)+0x4a
0033C56C 5BB67004 System_Windows_Forms_ni!(System.Windows.Forms.Application.DoEvents) + 0x18
0033 C 574 0682B972 MyAddin!Menginisialisasi () + 0x6fa

StackTraceString:<none>
HResult: 80131604

InnerException menunjukkan melempar awal pengecualian:

0:000 mengatakan!PrintException 136e9f10
Pengecualian objek: 136e9f10
Jenis pengecualian: System.ArgumentException
Pesan: Karakter ilegal di jalan.
InnerException:<none>
StackTrace (dihasilkan):</none></none>Br / mengatakan SP IP fungsi
0033BA18 617FFD07 mscorlib_ni!System.IO.Path.CheckInvalidPathChars (System.String, Boolean) + 0xa68db7
0033BA28 60E05936 mscorlib_ni!System.IO.Path.GetExtension (System.String) + 0x16
0033BA40 6D60F8E7 Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsImageService.GetIconForFileEx (System.String, Microsoft.VisualStudio.Shell.Interop.__VSUIDATAFORMAT, Microsoft.VisualStudio.Shell.Interop.__VSIconSource ByRef) + 0x3f
0033BA64 6D60F88C Microsoft_VisualStudio_Shell_UI_Internal_ni!Microsoft.VisualStudio.Services.VsImageService.GetIconForFileEx (System.String, Microsoft.VisualStudio.Shell.Interop.__VSUIDATAFORMAT, UInt32 ByRef) + 0x14
0033BA74 16D5ABD8 Microsoft_VisualStudio_Platform_WindowManagement_ni!Microsoft.VisualStudio.Platform.WindowManagement.UtilityMethods.GetDocumentTabImage (System.String, Microsoft.VisualStudio.Shell.Interop.__TABIMAGEFLAGS ByRef) + 0x38
0033BA90 6DE8F8F6 Microsoft_VisualStudio_Platform_WindowManagement_ni!(Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.UpdateDocumentIcon) + 0x131e2a

StackTraceString:<none>
HResult: 80070057

Satu diketahui penyebab ini adalah untuk memiliki tertanam tanda kutip dalam nama kumpulan dokumen. C# kode contoh yang menunjukkan pengecualian batin adalah sebagai berikut:</none>
static void Main(string[] args) { string path = null; path = @"A09F9925-32BC-47E1-9DC0-1F71C64E9A6E@SAMPLE.""ADEFUSR0"""; string extension = System.IO.Path.GetExtension(path); }
Kode ini akan melemparkan System.ArgumentException pada panggilan GetExtension.

Properti

ID Artikel: 2923556 - Kajian Terakhir: 27 Juni 2014 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Visual Studio Premium 2013
  • Microsoft Visual Studio Professional 2013
  • Microsoft Visual Studio Ultimate 2013
Kata kunci: 
kbmt KB2923556 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.
Klik disini untuk melihat versi Inggris dari artikel ini: 2923556

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com