Visual Studio случайным образом аварийно завершает работу devenv KERNELBASE.dll

Моя Visual Studio случайно аварийно завершает работу. Средство просмотра событий показывает следующую ошибку

Имя сбойного приложения: devenv.exe, версия: 12.0.40629.0, отметка времени: 0x5590c8a4

Имя сбойного модуля: KERNELBASE.dll, версия: 10.0.15063.674, отметка времени: 0x6d16dd24

Код исключения: 0xe0434352

Смещение ошибки: 0x000eb872

Идентификатор сбойного процесса: 0x3b00

Время запуска сбойного приложения: 0x01d34ecf7a049150

Путь сбойного приложения: C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe

Путь сбойного модуля: C:\Windows\System32\KERNELBASE.dll

Идентификатор отчета: xxxxxxxx-867c-4c54-b259-c28a7b9d8151

Полное имя сбойного пакета: Идентификатор сбойного связанного с пакетом приложения:

Я попытался запустить команду devenv /SAFEMODE в (C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE)

но все же это происходит, а иногда также появляется диалоговое окно «недостаточно места для хранения»

Приложение: devenv.exe

Версия фреймворка: v4.0.30319

Описание: Процесс был прерван из-за необработанного исключения.

Информация об исключении: System.ComponentModel.Win32Exception в MS.Win32.UnsafeNativeMethods.RegisterClassEx(WNDCLASSEX_D)

Журнал активности

(0x80004005): недостаточно памяти для обработки этой команды

в MS.Win32.UnsafeNativeMethods.RegisterClassEx(WNDCLASSEX_D wc_d)

at MS.Win32.HwndWrapper..ctor (Int32 classStyle, стиль Int32, Int32 exStyle, Int32 x, Int32 y, ширина Int32, высота Int32, имя строки, родитель IntPtr, крючки HwndWrapperHook[])

в System.Windows.Interop.HwndSource.Initialize (параметры HwndSourceParameters)

в System.Windows.Interop.HwndSource..ctor (параметры HwndSourceParameters)

в System.Windows.Controls.Primitives.Popup.PopupSecurityHelper.BuildWindow (Int32 x, Int32 y, Visual PlacementTarget, логическое прозрачное значение, хук HwndSourceHook, обработчик AutoResizedEventHandler)

в System.Windows.Controls.Primitives.Popup.BuildWindow(Visual targetVisual)

в System.Windows.Controls.Primitives.Popup.CreateWindow (логический asyncCall)

в System.Windows.Controls.Primitives.Popup.OnIsOpenChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)

в System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)

в System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)

в System.Windows.DependencyObject.NotifyPropertyChange (аргументы DependencyPropertyChangedEventArgs)

в System.Windows.DependencyObject.UpdateEffectiveValue (EntryIndex entryIndex, DependencyProperty dp, метаданные PropertyMetadata, EffectiveValueEntry oldEntry, EffectiveValueEntry и newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType OperationType)

в System.Windows.DependencyObject.SetValueCommon (DependencyProperty dp, значение объекта, метаданные PropertyMetadata, логическое значение coerceWithDeferredReference, логическое значение coerceWithCurrentValue, тип операции OperationType, логическое значение isInternal)

в System.Windows.DependencyObject.SetValue (DependencyProperty dp, значение объекта)

в Microsoft.VisualStudio.Language.Intellisense.Implementation.MouseTrackingQuickInfoPresenter.Render()

в Microsoft.VisualStudio.Language.Intellisense.Implementation.IntellisenseSessionStack.OnSessionPresenterChanged (отправитель объекта, EventArgs e)

в Microsoft.VisualStudio.Language.Intellisense.Implementation.IntellisenseSession.RaisePresenterChanged()

в Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Recalculate()

в Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoSession.Start()

в Microsoft.VisualStudio.Language.Intellisense.Implementation.QuickInfoBroker.TriggerQuickInfo (текстовое представление ITextView, триггерная точка ITrackingPoint, логическое значение trackMouse)

в Microsoft.Html.Editor.HtmlQuickInfoController.OnMouseHover (отправитель объекта, MouseHoverEventArgs e)

в Microsoft.VisualStudio.Text.Editor.Implementation.WpfTextView.RaiseHoverEvents()

ОБНОВИТЬ

Мое приложение запускается один или два раза в безопасном режиме, а затем даже закрывается. При попытке перезапустить визуальную студию это не удается. Затем средство просмотра событий или командная строка не работают, и мне нужно перезагрузить компьютер, чтобы что-то заработало.

ОБНОВЛЕНИЕ 2

Похоже на это и это моя проблема. Теперь, как мне использовать Dispatcher в моем коде?

public string ConvertRtfToHtml(string rtfText)
    {

        try
        {
            var thread = new Thread(ConvertRtfInSTAThread);                
            var threadData = new ConvertRtfThreadData { RtfText = rtfText };
            thread.SetApartmentState(ApartmentState.STA);
            thread.Start(threadData);

            try
            {
                thread.Join();
            }
            catch(ThreadStateException e){
                logger.Error("ThreadStateException " + e.Message);
            }
            catch (ThreadInterruptedException e) {
                logger.Error("ThreadInterruptedException " + e.Message);
            }                


            return threadData.HtmlText;

        }
        catch (Exception e){
            logger.Error("ConvertRtfToHtml: " + e.InnerException.Message);
            return "Error";
        }

    }

ConvertRtfToHtml вызывается из цикла ConvertRtfInSTAThread использует элемент управления RichTextBox


person Samra    schedule 29.10.2017    source источник


Ответы (1)


после множества проб и ошибок я обнаружил, что основной причиной было -доступно-для-обработки-этой-команды" rel="nofollow noreferrer">это. Вот моя реализация.

person Samra    schedule 03.11.2017