Visual Studio 2012中XAML设计器崩溃

3
当我在设计师中加载XAML文件时,我会收到以下异常,然后我必须从进程管理器中终止VS 2012。有什么解决方法吗?
Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteException
Object reference not set to an instance of an object.
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.WaitForCompletion(NestedCallContext nestedCallContext, BlockingCall call, WaitHandle timeoutSignal)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.MarshalOutSynchronous(Action action, Int32 targetApartmentId, WaitHandle aborted, WaitHandle timeoutSignal)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.MarshalOut(Action action, Int32 targetApartmentId, WaitHandle aborted, CallSynchronizationMode syncMode, WaitHandle timeoutSignal)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalOut[TValue](RemoteHandle`1 targetObject, Action action, CallSynchronizationMode syncMode)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalOut[TResult,TValue](RemoteHandle`1 targetObject, Func`2 func, CallSynchronizationMode syncMode)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.LocalHostTextBufferSynchronizer.get_IsReadOnly()
   at Microsoft.Expression.DesignHost.DesignerTextBufferSynchronizer.get_IsReadOnly()
   at Microsoft.Expression.DesignHost.DesignerTextBuffer.get_IsReadOnly()
   at Microsoft.Expression.DesignSurface.Documents.TextBuffer.get_IsReadOnly()
   at Microsoft.Expression.DesignSurface.Documents.SceneDocument.get_IsReadOnly()
   at Microsoft.Expression.DesignSurface.Documents.SceneDocument.get_IsUndoTargetReadOnly()
   at Microsoft.Expression.DesignSurface.Selection.SelectionSet`2.SetSelectionWithUndo(String description, ListOfT newSelection, T newPrimarySelection)
   at Microsoft.Expression.DesignSurface.Selection.SceneNodeSelectionSet.SetSelectionWithUndo(String description, SceneNodeOrderedCollection newSelection, SceneNode newPrimarySelection)
   at Microsoft.Expression.DesignSurface.Selection.SelectionSet`2.ExtendSelection(T selectionToExtend)
   at Microsoft.Expression.DesignSurface.ViewModel.SceneViewModel.SelectNodes(ICollection`1 nodes)
   at Microsoft.Expression.DesignSurface.View.SceneView.SelectionSynchronizer.OnCaretPositionChangedTimeoutTimerTick(TextEditorContext textEditor)
   at Microsoft.Expression.DesignSurface.View.SceneView.SelectionSynchronizer.SynchronizeSceneToMarkup(TextEditorContext textEditor)
   at Microsoft.Expression.DesignSurface.View.SceneView.TextEditor_CaretPositionChanged(Object sender, EventArgs e)
   at Microsoft.Expression.DesignSurface.TextEditorContext.CaretPositionChangedPipe(Object sender, EventArgs args)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.LocalEvent`2.<>c__DisplayClass12.<Invoke>b__10()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.Call.InvokeWorker()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.Call.Invoke(Boolean waitingInExternalCall)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.InvokeCall(Call call)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.ProcessQueue(CallQueue queue)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.ProcessInboundQueue(Int32 identity)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.ProcessMessage(Int32 msg, IntPtr wParam, Boolean elevatedQuery, Boolean& handled)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.OnWindowMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.MessageOnlyHwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.Run()
   at System.Windows.Application.RunDispatcher(Object ignore)
   at System.Windows.Application.RunInternal(Window window)
   at System.Windows.Application.Run(Window window)
   at System.Windows.Application.Run()
   at Microsoft.Expression.DesignHost.Isolation.IsolationProcess.RunApplication()
   at Microsoft.Expression.DesignHost.Isolation.IsolationProcess.<>c__DisplayClass2.<Main>b__0()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteException
Object reference not set to an instance of an object.

Server stack trace: 
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.WaitForCompletion(NestedCallContext nestedCallContext, BlockingCall call, WaitHandle timeoutSignal)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.MarshalIn(Action action, Int32 targetApartmentId)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalIn(IRemoteObject targetObject, Action action)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalIn[TResult](IRemoteObject targetObject, Func`1 func)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteHostTextBufferSynchronizer.get_IsReadOnly()
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.IRemoteHostTextBufferSynchronizer.get_IsReadOnly()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.LocalHostTextBufferSynchronizer.<get_IsReadOnly>b__8(IRemoteHostTextBufferSynchronizer hs)
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.<>c__DisplayClass4`2.<MarshalOut>b__3()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.Call.InvokeWorker()

Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteException
Object reference not set to an instance of an object.
   at Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteHostTextBufferSynchronizer.<get_IsReadOnly>b__7()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.<>c__DisplayClass16`1.<MarshalIn>b__15()
   at Microsoft.Expression.DesignHost.Isolation.Remoting.STAMarshaler.Call.InvokeWorker()
1个回答

0

我知道这个问题有点老了,但我在VS2013中遇到了类似的问题,从MSDN文章中找到了线索,并检查了事件查看器以查找异常,寻找XDesProc.exe。

问题是我的显卡驱动程序过时了。

一旦更新了驱动程序,所有问题都得到了解决。

这可能会帮助某些人。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接