Unable to open ViesualGdb dialog after some Windows update

Sysprogs forums Forums VisualGDB Unable to open ViesualGdb dialog after some Windows update

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #34340
    marrtin
    Participant

    After some windows update I am not able to open Visualgdb dialog. I have updated Visual gdb to current latest version. It didn’t work. Then I have updated Visual studio 2022 to version 17.6. But following error still persists.

     

    • This topic was modified 11 months, 2 weeks ago by marrtin.
    Attachments:
    You must be logged in to view attached files.
    #34343
    support
    Keymaster

    Hi,

    This error means that the .Net framework fails to load one of the icons embedded into the VisualGDB resources. Such things are handled automatically by the .Net framework and should not work differently on different computers unless the system is seriously broken.

    We have not encountered it before, but the most likely explanation is that some system DLLs responsible for resource loading, or the VisualGDB DLLs got corrupt. You can try reinstalling VisualGDB or using the latest build from the development branch (VisualGDB-5.6.109.4871.msi), but if it doesn’t work, you may need to do a System Restore, or a clean OS reinstall.

    #34345
    marrtin
    Participant

    Thanks I will try it. My OS looks quite stable. I have no idea what happened. The computer is installed for 2+ years and only automatic updates can really damage something, because in our company we actually don’t have admin privilege due to security reasons to install software ourselfes.

    • This reply was modified 11 months, 2 weeks ago by marrtin.
    #34347
    support
    Keymaster

    From what we can see, either the icon resources inside VisualGDB (or some system themes) got damaged, or the logic in the .Net framework responsible for decoding them is broken. You can try checking your colleagues’ computers – if anyone else encountered the same issue after a recent update, it can be indeed some strange compatibility between image formats and some Windows update that we could fix. But if only happens on 1 computer, it is unlikely a case of one specific system DLL or setting getting broken.

    #34348
    marrtin
    Participant

    Still doesn’t work. It’s bad. Is there any possibility how to retrieve more details what’s going on? To reinstall the whole system is solution which I would like to avoid 🙁

    #34351
    support
    Keymaster

    You can try posting the full log from the error message (most of it didn’t fit in the screenshot) and experimenting around to find more context:

    • Does it always happens with a specific project/project type or always?
    • Is there a specific action that triggers it?
    • Does some other functionality (e.g. Quick Debug or editing remote hosts) work?
    • Does it work differently with older VisualGDB versions?

    But based on the error message, there’s a high chance the root cause is outside VisualGDB with no clear path around it.

    #34360
    marrtin
    Participant

    Hi thanks

    Let me answer the questions

    • happens always, you are not allowed to create new Linux project and the open the main VisualGdb window for existing project
    • no specific action trigger
    • yes the plugin works, you are also to able to open some plugin windows like Quick debug, but the main GUI is corrupted
    • no change after updating VisualGDB and Visual studio
    • to be more accurate, the error occurs also for some other windows (for example shared folder manager) but only when the window is opened for the first time
    • exception details
    VisualGDB version: 5.6.109.4871
    ------------------ System.Windows.Markup.XamlParseException ------------------
    System.Windows.Markup.XamlParseException: Provide value on 'System.Windows.Baml2006.TypeConverterMarkupExtension' threw an exception. ---> System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index
    at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
    at System.Collections.Generic.List`1.get_Item(Int32 index)
    at System.Windows.Media.Imaging.BitmapDecoder.SetupFrames(BitmapDecoder decoder, ReadOnlyCollection`1 frames)
    at System.Windows.Media.Imaging.BitmapDecoder.Initialize(BitmapDecoder decoder)
    at System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy, Boolean insertInDecoderCache)
    at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy)
    at System.Windows.Media.ImageSourceConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
    at MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue(MarkupExtension me, IServiceProvider serviceProvider)
    --- End of inner exception stack trace ---
    at System.Windows.Markup.XamlReader.RewrapException(Exception e, IXamlLineInfo lineInfo, Uri baseUri)
    at System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter)
    at System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlObjectWriter objectWriter)
    at System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent(DependencyObject container, IComponentConnector componentConnector, IStyleConnector styleConnector, List1 affectedChildren, UncommonField1 templatedNonFeChildrenField)
    at System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List`1 affectedChildren)
    at System.Windows.StyleHelper.ApplyTemplateContent(UncommonField`1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate)
    at System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField`1 templateDataField, FrameworkElement container)
    at System.Windows.FrameworkElement.ApplyTemplate()
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Border.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Control.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
    at System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ItemsPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ScrollContentPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
    at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
    at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.ScrollViewer.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Border.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Control.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
    at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
    at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
    at System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
    at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
    at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Control.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
    at System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Border.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Control.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ScrollContentPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
    at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
    at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.ScrollViewer.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
    at System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Control.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
    at System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
    at System.Windows.Controls.Grid.MeasureOverride(Size constraint)
    at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
    at System.Windows.UIElement.Measure(Size availableSize)
    at System.Windows.ContextLayoutManager.UpdateLayout()
    at System.Windows.Interop.HwndSource.SetLayoutSize()
    at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
    at System.Windows.Window.SetRootVisual()
    at System.Windows.Window.SetRootVisualAndUpdateSTC()
    at System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight)
    at System.Windows.Window.CreateSourceWindow(Boolean duringShow)
    at System.Windows.Window.ShowHelper(Object booleanBox)
    at System.Windows.Window.ShowDialog()
    at c8.r.a(Window a)
    at c8.g2(Window a)
    at qm2.GDBProjectProperties.ExecuteForProject(qm2 addIn, Object objPrj, Type pageTypeToSelect)
    trace=[System.Windows.Markup.XamlReader.RewrapException:0, System.Windows.FrameworkTemplate.LoadTemplateXaml:588, System.Windows.FrameworkTemplate.LoadTemplateXaml:65, System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent:276, System.Windows.FrameworkTemplate.LoadContent:26, System.Windows.StyleHelper.ApplyTemplateContent:289, System.Windows.FrameworkTemplate.ApplyTemplateContent:31, System.Windows.FrameworkElement.ApplyTemplate:0, System.Windows.FrameworkElement.MeasureCore:42, System.Windows.UIElement.Measure:409, System.Windows.Controls.Border.MeasureOverride:264, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Control.MeasureOverride:34, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.StackPanel.StackMeasureHelper:268, System.Windows.Controls.StackPanel.MeasureOverride:50, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ItemsPresenter.MeasureOverride:0, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ScrollContentPresenter.MeasureOverride:81, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Grid.MeasureCell:241, System.Windows.Controls.Grid.MeasureCellsGroup:62, System.Windows.Controls.Grid.MeasureOverride:550, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.ScrollViewer.MeasureOverride:263, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Border.MeasureOverride:264, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Control.MeasureOverride:34, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Grid.MeasureCell:241, System.Windows.Controls.Grid.MeasureCellsGroup:62, System.Windows.Controls.Grid.MeasureOverride:550, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.StackPanel.StackMeasureHelper:268, System.Windows.Controls.StackPanel.MeasureOverride:50, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ContentPresenter.MeasureOverride:0, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Grid.MeasureCell:241, System.Windows.Controls.Grid.MeasureCellsGroup:62, System.Windows.Controls.Grid.MeasureOverride:550, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Control.MeasureOverride:34, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.StackPanel.StackMeasureHelper:268, System.Windows.Controls.StackPanel.MeasureOverride:50, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ContentPresenter.MeasureOverride:0, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Border.MeasureOverride:264, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Control.MeasureOverride:34, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ScrollContentPresenter.MeasureOverride:151, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Grid.MeasureCell:241, System.Windows.Controls.Grid.MeasureCellsGroup:62, System.Windows.Controls.Grid.MeasureOverride:777, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.ScrollViewer.MeasureOverride:263, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, MS.Internal.Helper.MeasureElementWithSingleChild:35, System.Windows.Controls.ContentPresenter.MeasureOverride:0, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Control.MeasureOverride:34, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.Controls.Grid.MeasureCell:241, System.Windows.Controls.Grid.MeasureCellsGroup:62, System.Windows.Controls.Grid.MeasureOverride:777, System.Windows.FrameworkElement.MeasureCore:568, System.Windows.UIElement.Measure:409, System.Windows.ContextLayoutManager.UpdateLayout:463, System.Windows.Interop.HwndSource.SetLayoutSize:731, System.Windows.Interop.HwndSource.set_RootVisualInternal:258, System.Windows.Window.SetRootVisual:26, System.Windows.Window.SetRootVisualAndUpdateSTC:6, System.Windows.Window.SetupInitialState:805, System.Windows.Window.CreateSourceWindow:363, System.Windows.Window.ShowHelper:59, System.Windows.Window.ShowDialog:492, c8+r.a:143, c8.g2:124, qm2+GDBProjectProperties.ExecuteForProject:75]
    ------------------ Inner exception ------------------
    ------------------ System.ArgumentOutOfRangeException ------------------
    System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index
    at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
    at System.Collections.Generic.List`1.get_Item(Int32 index)
    at System.Windows.Media.Imaging.BitmapDecoder.SetupFrames(BitmapDecoder decoder, ReadOnlyCollection`1 frames)
    at System.Windows.Media.Imaging.BitmapDecoder.Initialize(BitmapDecoder decoder)
    at System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy, Boolean insertInDecoderCache)
    at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy)
    at System.Windows.Media.ImageSourceConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
    at MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue(MarkupExtension me, IServiceProvider serviceProvider)
    trace=[System.ThrowHelper.ThrowArgumentOutOfRangeException:46, System.Collections.Generic.List`1.get_Item:0, System.Windows.Media.Imaging.BitmapDecoder.SetupFrames:135, System.Windows.Media.Imaging.BitmapDecoder.Initialize:18, System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream:531, System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream:9, System.Windows.Media.ImageSourceConverter.ConvertFrom:303, MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue:8]

     

    #34361
    marrtin
    Participant

    Hopefully I found the solution.

    I changed in Windows color Management ->Advanced->Device profile to System default (sRGB IEC61966-2.1)

    and after restarting of visual studio it started to work. I assume that some windows update has changed my profile to sRGB vitual device model profile which caused this issue.

    #34367
    support
    Keymaster

    Hi,

    Thanks, we have managed to reproduce it. Indeed, looks like changing the device profile to sRGB breaks something in the part of the WPF renderer used by VisualGDB.

    We will check it again in about a month after Microsoft releases another batch of updates, and if the problem is not fixed on their end, will check if we can add a workaround on our side.

    If anyone else runs into this and the workaround doesn’t work, please let us know and we will raise the priority for this.

    Edit: we have investigated this further and found the root cause. VisualGDB uses many icons from the Visual Studio Image Library, and apparently, many of them contain embedded color correction profiles that trigger this exception under some configurations (we reproduced it on Win10 but not on Win11). Either way, we have updated our build system to remove the ICC profiles from all icons, so VisualGDB will now work correctly even with the color correction enabled. If anyone else runs into this, feel free to try this build: VisualGDB-6.0.2.4903.msi. The fix will also be included in all VisualGDB versions after 6.0 Beta 2.

    • This reply was modified 10 months ago by support. Reason: posted a link to the hotfix
Viewing 9 posts - 1 through 9 (of 9 total)
  • You must be logged in to reply to this topic.