2012-04-03 8 views
9

Noah Richards là ai, và tại sao tên của anh ta lại nằm trong ngăn xếp của xưởng ảnh trực quan? Tôi tham khảo dấu vết ngăn xếp cụ thể này .. (trên một ít quan trọng hơn, tại sao điều này sẽ xảy ra? Nó là 100% tái sản xuất sau khi thêm một dấu mở ngoặc trên một thành viên được bảo vệ của một lớp trong một giải pháp dự án ...Noah Richards là ai, và mối quan hệ của anh với VS2010 là gì?

lỗi trong câu hỏi là:

AlignAssignments.dll!NoahRichards.AlignAssignments.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0xb2 bytes 


(Attempted to read or write protected memory. This is often an indication that other memory is corrupt.) 

Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandFilterWrapper.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x71 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
CodeAlignment.dll!CMcG.CodeAlignment.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0xa7 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
***AlignAssignments.dll!NoahRichards.AlignAssignments.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut)*** + 0xb2 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
CopyAsHtml.dll!Microsoft.VisualStudio.Text.Formatting.Implementation.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x16b bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
Microsoft.VisualStudio.AutoBraceComplete.dll!Microsoft.VisualStudio.AutoBraceComplete.AutoBraceCommandFilter.GetTypingAction.AnonymousMethod__0() + 0x28 bytes 
Microsoft.VisualStudio.AutoBraceComplete.Impl.Basic.dll!Microsoft.VisualStudio.AutoBraceComplete.Impl.Basic.Pairs.StringBasedPairCreator.OnTypingOpeningCharacter(Microsoft.VisualStudio.AutoBraceComplete.Context.IContext context, char typedChar, System.Func<Microsoft.VisualStudio.AutoBraceComplete.Pair.PairResult> typingAction) + 0x222 bytes 
Microsoft.VisualStudio.AutoBraceComplete.dll!Microsoft.VisualStudio.AutoBraceComplete.Pairs.PairManager.HandleTypeChar(char typedChar, System.Func<Microsoft.VisualStudio.AutoBraceComplete.Pair.PairResult> action) + 0xe5 bytes 
Microsoft.VisualStudio.AutoBraceComplete.dll!Microsoft.VisualStudio.AutoBraceComplete.AutoBraceCommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0xc8 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
OrganizeVBImports.dll!Microsoft.VisualStudio.OrganizeVBImports.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x314 bytes  
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
QuickFind.dll!Microsoft.QuickFind.CommandBlocker.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x45 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandFilterWrapper.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x71 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandFilterWrapper.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x71 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.CommandChainNode.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x20 bytes 
SolutionNavigator.dll!Microsoft.VisualStudio.Labs.CommandFilter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0xd3 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.VsTextViewAdapter.Exec(ref System.Guid pguidCmdGroup, uint nCmdID, uint nCmdexecopt, System.IntPtr pvaIn, System.IntPtr pvaOut) + 0x163 bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.VsKeyboardFilter.SendCommand(System.Guid cmdGroup, uint cmdID, object inParam) + 0x6f bytes 
Microsoft.VisualStudio.Editor.Implementation.dll!Microsoft.VisualStudio.Editor.Implementation.VsKeyboardFilter.TextInput(System.Windows.Input.TextCompositionEventArgs args) + 0x77 bytes 
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.KeyProcessorDispatcher.DispatchTextInputEvents.AnonymousMethod__0(Microsoft.VisualStudio.Text.Editor.KeyProcessor p, System.Windows.Input.TextCompositionEventArgs args) + 0xb bytes 
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.KeyProcessorDispatcher.Dispatch<System.__Canon>.AnonymousMethod__1a() + 0x18 bytes 
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Utilities.GuardedOperations.CallExtensionPoint(object errorSource, System.Action call) + 0x2d bytes  
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.KeyProcessorDispatcher.Dispatch<System.Windows.Input.TextCompositionEventArgs>(System.Action<Microsoft.VisualStudio.Text.Editor.KeyProcessor,System.Windows.Input.TextCompositionEventArgs> action, System.Windows.Input.TextCompositionEventArgs args) + 0x150 bytes  
Microsoft.VisualStudio.Platform.VSEditor.dll!Microsoft.VisualStudio.Text.Editor.Implementation.KeyProcessorDispatcher.MakeHandler.AnonymousMethod__17(object sender, System.Windows.Input.TextCompositionEventArgs args) + 0x1c bytes 
PresentationCore.dll!System.Windows.Input.TextCompositionEventArgs.InvokeEventHandler(System.Delegate genericHandler, object genericTarget) + 0x31 bytes  
PresentationCore.dll!System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate handler, object target) + 0x29 bytes 
PresentationCore.dll!System.Windows.RoutedEventHandlerInfo.InvokeHandler(object target, System.Windows.RoutedEventArgs routedEventArgs) + 0x3e bytes  
PresentationCore.dll!System.Windows.EventRoute.InvokeHandlersImpl(object source, System.Windows.RoutedEventArgs args, bool reRaised) + 0xbe bytes 
PresentationCore.dll!System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject sender, System.Windows.RoutedEventArgs args) + 0x79 bytes 
PresentationCore.dll!System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs args) + 0x41 bytes 
PresentationCore.dll!System.Windows.UIElement.RaiseEvent(System.Windows.RoutedEventArgs args, bool trusted) + 0x2c bytes  
PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea() + 0x1ff bytes 
PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input) + 0x45 bytes 
PresentationCore.dll!System.Windows.Input.TextCompositionManager.UnsafeCompleteComposition(System.Windows.Input.TextComposition composition) + 0x7e bytes 
PresentationCore.dll!System.Windows.Input.TextCompositionManager.PostProcessInput(object sender, System.Windows.Input.ProcessInputEventArgs e) + 0x41d bytes  
PresentationCore.dll!System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(System.Windows.Input.ProcessInputEventHandler postProcessInput, System.Windows.Input.ProcessInputEventArgs processInputEventArgs) + 0x9d bytes  
PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea() + 0x23b bytes 
PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input) + 0x45 bytes 
PresentationCore.dll!System.Windows.Input.TextCompositionManager.UnsafeStartComposition(System.Windows.Input.TextComposition composition) + 0x74 bytes 
PresentationCore.dll!System.Windows.Input.TextCompositionManager.PostProcessInput(object sender, System.Windows.Input.ProcessInputEventArgs e) + 0x6ca bytes  
PresentationCore.dll!System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(System.Windows.Input.ProcessInputEventHandler postProcessInput, System.Windows.Input.ProcessInputEventArgs processInputEventArgs) + 0x9d bytes  
PresentationCore.dll!System.Windows.Input.InputManager.ProcessStagingArea() + 0x23b bytes 
PresentationCore.dll!System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs input) + 0x45 bytes 
PresentationCore.dll!System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport inputReport) + 0x62 bytes 
PresentationCore.dll!System.Windows.Interop.HwndKeyboardInputProvider.ProcessTextInputAction(System.IntPtr hwnd, MS.Internal.Interop.WindowMessage msg, System.IntPtr wParam, System.IntPtr lParam, ref bool handled) + 0x189 bytes 
PresentationCore.dll!System.Windows.Interop.HwndSource.OnPreprocessMessage(object param) + 0x2c6 bytes 
WindowsBase.dll!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate callback, object args, int numArgs) + 0x53 bytes 
WindowsBase.dll!MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(object source, System.Delegate method, object args, int numArgs, System.Delegate catchHandler) + 0x42 bytes  
WindowsBase.dll!System.Windows.Threading.Dispatcher.InvokeImpl(System.Windows.Threading.DispatcherPriority priority, System.TimeSpan timeout, System.Delegate method, object args, int numArgs) + 0xb4 bytes  
PresentationCore.dll!System.Windows.Interop.HwndSource.OnPreprocessMessageThunk(ref System.Windows.Interop.MSG msg, ref bool handled) + 0xc6 bytes 
PresentationCore.dll!System.Windows.Interop.HwndSource.WeakEventPreprocessMessage.OnPreprocessMessage(ref System.Windows.Interop.MSG msg, ref bool handled) + 0x35 bytes  
WindowsBase.dll!System.Windows.Interop.ComponentDispatcherThread.RaiseThreadMessage(ref System.Windows.Interop.MSG msg) + 0x3d bytes  
Microsoft.VisualStudio.Platform.WindowManagement.dll!Microsoft.VisualStudio.Platform.WindowManagement.WindowManagerService.PreTranslateInput(Microsoft.VisualStudio.OLE.Interop.MSG[] lpmsg, bool handled) + 0xa5 bytes 
[Native to Managed Transition] 
+0

http://stackoverflow.com/users/128945/noah-richards –

+0

Anh ấy đã viết một plugin mà bạn đang sử dụng. – jrummell

+0

Google-Fu của tôi yếu ... http://blogs.msdn.com/b/noahric/archive/2011/02/07/moving-on.aspx – Joebone

Trả lời

10

Noah Richards là một trong những nhà phát triển đã làm việc trên bản phát hành năm 2010 của Visual Studio. Bây giờ ông làm việc tại google nhưng ông không có một số phần mở rộng Visual Studio có sẵn trên bộ sưu tập Visual Studio (và tham gia vào một số người khác).

Có vẻ như bạn đã cài đặt tiện ích "Căn chỉnh bài tập" và nó đang gặp lỗi trong khi xử lý đột quỵ chính.

Ông cũng tham gia vào stack overflow

+0

Một thế giới nhỏ bé của nó sau tất cả! Chỉ có vẻ buồn cười để có tên ai đó trong một dấu vết ngăn xếp! Khi nó quay ra tôi * DO * có phần mở rộng được cài đặt, tuy nhiên vụ tai nạn xuất hiện liên tục trên một số máy, phần mở rộng của chúng tôi hoặc không. Tuy nhiên, cảm ơn bạn đã trả lời cả hai câu hỏi của tôi :) – Joebone

+4

Lưu ý rằng nó không chạy vào lỗi, nó chỉ xảy ra trong chuỗi lệnh, lịch sự của mọi thứ tuyệt vời của VS-on-the-world-on-on- hành vi-command-chain-callstack :-p –

5

Noah là một trong những nhà phát triển trên Visual Studio 2010. Believe bây giờ anh làm việc cho Google anh ấy là một user here, vì vậy có lẽ ông có thể gửi thêm chi tiết

+1

Có thể tái tạo sự cố này trên các máy không có Tiện ích mở rộng, tôi đã nhận ra nguyên nhân có nhiều khả năng ở nơi khác. Ngày mai tôi sẽ cố gắng lấy một dấu vết ngăn xếp từ một máy tính với một cài đặt sạch sẽ và xem nếu giúp thu hẹp nguyên nhân. – Joebone

1

Trông như thế nào.? bạn đã cài đặt assignment alignment plugin của mình.

+0

Điều đó tôi đã làm, và cũng rất vui! Tuy nhiên tôi đã nhận ra các dấu vết ngăn xếp trong trường hợp này là gây hiểu nhầm, như vụ tai nạn là tái sản xuất trên máy không có phần mở rộng được cài đặt nào. Tôi đoán tôi nên lấy một cái hữu ích hơn từ một trong số họ. – Joebone

1

Noah đã viết một số extensions for Visual Studio và nó có thể là một trong số họ tình cờ được nạp vào cài đặt của bạn. Một số kết thúc trong Power Tools và sau đó trong Visual Studio chính nó.

+0

Chắc chắn là có thể trong trường hợp của tôi :) Tôi là một thứ của một người nghiện mở rộng có thể giống như tự bắn mình vào chân đôi khi! Tuy nhiên, trong trường hợp đặc biệt này, điều này dường như không phải là nguyên nhân. Hoặc ít nhất không phải là nguyên nhân duy nhất :) Cảm ơn bạn đã dành thời gian để trả lời mặc dù! – Joebone

10

Tôi nổi tiếng!

Nếu bạn tò mò, tôi đoán thủ phạm thực sự là phần mở rộng AutoBraceComplete (hoặc có thể phần mở rộng CodeAlignment) sẽ làm rối tung mọi thứ theo cách nào đó để xử lý lệnh sau này. AlignAssignments chỉ chuyển tiếp trên các cuộc gọi Exec không dành cho lệnh gán gán. Bạn có thể xem những gì các exec cho AlignAssignments trông giống như: https://github.com/NoahRic/AlignAssignments/blob/master/CommandFilter.cs

Lưu ý phụ - Tôi không biết tôi đã làm gì để có được tên của tôi trong đó; có lẽ nó đã được đặt làm tên công ty của tôi, và vì vậy VS quyết định tôi cần phải nổi tiếng? Oh, và "CMcG" thực sự là "Chris McGrath", người đã viết phần mở rộng CodeAlignment, vì vậy ai đó cũng nên đăng câu hỏi Stack Overflow về anh ấy :) Tôi không nên là người nổi tiếng duy nhất!

+1

Điều đó khá thú vị. Tôi có cảm giác rằng rất nhiều mục nhập trong ngăn xếp theo dõi không liên quan đến vấn đề. Trong tiện ích studio trực quan, bạn có phương pháp kiểm tra xem lệnh có phải là một trong những bạn muốn xử lý hay không. Nếu không, bạn chuyển nó sang kế tiếp. Vì vậy, điều này sẽ dẫn đến nhiều mục nhập được thêm vào theo dõi ngăn xếp mà không làm gì hơn là gọi liên kết tiếp theo trong chuỗi. P.S. McGrath không phải McGraff;) –