Visual Studio Add-in havaruje s "TargetInvocationException" chybové hlásenie

Preklady článku Preklady článku
ID článku: 2923556 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Príznaky

Pri spustení alebo doplnok Integration balíku, Microsoft Visual Studio 2013 neočakávane ukončiť s neošetrená výnimka typu System.Reflection.TargetInvocationException.

V denníku udalostí aplikácie zobrazí chyba aplikácie s textom podobné:

Chybujúceho názov aplikácie: devenv.exe, verzia: 12.0.21005.1, časová pečiatka: 0x524fcb34
Chybujúceho modul meno: KERNELBASE.dll, verzia: 6.1.7601.18229, časová pečiatka: 0x51fb10c6
Kód výnimky: 0xe0434352
Poruchového ofsetová: 0x0000812f
Chybujúceho proces s identifikáciou: 0xe3c
Chyba aplikácie štart čas: 0x01cf0b21c6346ea8
Chybujúceho cesta k aplikácii: C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe
Chybujúceho modul cesta: C:\Windows\system32\KERNELBASE.dll

Štandardu nasledoval všetkystranyvykonávajú akcia s .NET Runtime ako zdroj withtext podobné:

Žiadosti: devenv.exe
Framework verzia: v4.0.30319
Popis: Proces bol ukončený z dôvodu nespracovanú výnimku.
Výnimkou Info: System.Reflection.TargetInvocationException
Zásobník:
v System.RuntimeMethodHandle.InvokeMethod (System.Object, System.Object [], System.Signature, Boolean)
v System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (System.Object, [System.Object], System.Object[])
v System.Delegate.DynamicInvokeImpl(System.Object[])
v System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32)
na MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)
v System.Windows.Threading.DispatcherOperation.InvokeImpl()
v System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(System.Object)
v System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
v System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
v System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
v System.Windows.Threading.DispatcherOperation.Invoke()
v System.Windows.Threading.Dispatcher.ProcessQueue()
v System.Windows.Threading.Dispatcher.WndProcHook (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
na MS.Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
na MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
v System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32)
na MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate)
v System.Windows.Threading.Dispatcher.LegacyInvokeImpl (System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
na MS.Win32.HwndSubclass.SubclassWndProc (IntPtr, Int32, IntPtr, IntPtr)

Príčina

Thisissue sa vyskytuje, pretože kód zmeny v Visual Studio IDE v roku 2013 a ovplyvňuje dokumenty, ktoré nie sú názvy platnú cestu ako analyzovaný triedu rozhrania .NET System.IO.File. Visual Studio môžu hodiť System.ArgumentException pri otvorení týchto dokumentov, ktoré je až prebublávať IDE ako TargetInvocationException.

Riešenie

Môžete zabrániť alebo obísť tým, že názvami dokladu sú platné názvy súborov Win32.

Tento problém bol vyriešený vo Visual Studio 2013 Update 2 a novšie verzie Visual Studio.

Ďalšie informácie

Zásobník volaní z TargetInvocationException príklad je uvedený nižšie. To je z procesu dump súbor zachytil na nechránenú výnimku a zobrazené vo funkcii ladenia WindDdbg pomocou rozšírenia SOS Zobrazenie spravovaných výnimkou volania komíny:


Typ výnimky CLR: System.Reflection.TargetInvocationException
"Výnimka bol hodený do cieľa zariekavanie."
Chyba: Symbol súbor sa nenašiel. Zlyhanie na export symboly pre 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 až ei pl nz ac pe nc
sk = 001b ss = 0023 ds = 0023 es = 0023 fs = 003b gs = 0000 efl = 00200216
KERNELBASE!RaiseException + 0x54:
7528812f c9 dovolenky
0:000 >! loadby sos clr
0:000 >! sos.PrintException
Výnimkou objektu: 136eb7f8
Typ výnimky: System.Reflection.TargetInvocationException
Správy: Výnimka bol hodený cieľ zariekavanie.
InnerException: System.ArgumentException, použitie!PrintException 136e9f10 viac.
StackTrace (vytvorené):
SP IP funkcie
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
C 0033 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) + 0x5a
0033 C 104 6079C75B WindowsBase_ni! MS.Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) + 0x9b
0033 C 140 6079C6AB WindowsBase_ni! MS.Win32.HwndSubclass.DispatcherCallbackOperation (System.Object) + 0x6b
0033C 150 6079C 562 WindowsBase_ni!System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32) + 0x52
WindowsBase_ni 170 6079C49A C 0033! 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
0033 C 208 6079BFF1 WindowsBase_ni! 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
C 0033 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
C 0033 574 0682B972 MyAddin!(Inicializácia) + 0x6fa

StackTraceString:<none>
Hodnota HResult: 80131604

InnerException ukazuje počiatočnú výnimkou hodiť:

0:000 >!PrintException 136e9f10
Výnimkou objektu: 136e9f10
Typ výnimky: System.ArgumentException
Správa: Neplatné znaky v ceste.
InnerException:<none>
StackTrace (vytvorené):</none></none>Br / > SP IP funkcie
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 (UInt32 System.String, Microsoft.VisualStudio.Shell.Interop.__VSUIDATAFORMAT, 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>
Hodnota HResult: 80070057

Jeden známy dôvod tohto je už vložené úvodzovky v názve dokumentu. Napríklad C# kód ktorý demonštruje vo vnútornej výnimke je nasledovné:</none>
static void Main(string[] args) { string path = null; path = @"A09F9925-32BC-47E1-9DC0-1F71C64E9A6E@SAMPLE.""ADEFUSR0"""; string extension = System.IO.Path.GetExtension(path); }
Tento kód bude hodiť System.ArgumentException na GetExtension výzvu.

Vlastnosti

ID článku: 2923556 - Posledná kontrola: 26. júna 2014 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft Visual Studio Premium 2013
  • Microsoft Visual Studio Professional 2013
  • Microsoft Visual Studio Ultimate 2013
Kľúčové slová: 
kbmt KB2923556 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok je preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft a možno ho opraviť prostredníctvom technológie Community Translation Framework (CTF). Microsoft ponúka strojovo preložené články, články upravené komunitou aj články preložené prekladateľmi, aby zabezpečil prístup ku všetkým článkom databázy Knowledge Base vo viacerých jazykoch. Strojovo preložené články aj upravené články môžu obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky. Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené neprávnym prekladom obsahu alebo jeho použitím zo strany našich zákazníkov. Ďalšie informácie o technológii CTF nájdete na lokalite http://support.microsoft.com/gp/machine-translation-corrections/sk.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 2923556

Odošlite odozvu

 

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