У меня есть приложение WinForms, которое использует скин Stardocks WindowBlinds.Начиная с последнего обновления Windows 10 до 1809 года, я не могу использовать базовый System.Windows.Forms.OpenFileDialog без сбоев при исключении 0x80040111 (CLASS_E_CLASSNOTAVAILABLE)
(см. Стек ниже).Эта проблема также касается SaveFileDialog.
Я перепробовал все, что мог придумать, например:
Пытался использовать все различные флаги.
Попытка исключить диалоговое окно открытия файла из обложки.
Различные предложения от других форумов по отключению высококонтрастных и других вещей для проблем, которые также получают исключение COM, как у меня.
Единственное, что заставило его работать, это использовать AutoUpgradeEnabled
как false
, а затем в диалоге появился очень старый скин Windows 7.
любой другойс той же проблемой?
Полный стек:
Метод делегирования b__0 с аргументами System.Object [] вызвал исключение Создание экземпляра компонента COM с помощью CLSID {C0B4E2F3-BA21-4773-8DBA- 335EC946EB8B} из IClassFactory не удалось из-за следующей ошибки: 80040111 ClassFactory не может предоставить запрошенный класс (Исключение из HRESULT: 0x80040111 (CLASS_E_CLASSNOTAVAILABLE)).System.Runtime.InteropServices.COMException (0x80040111): Создание экземпляра COM-компонента с CLSID {C0B4E2F3-BA21-4773-8DBA-335EC946EB8B} из IClassFactory не выполнено из-за следующей ошибки: 80040111 ClassFactory не может предоставить запрошенный класс (исключение изHRESULT: 0x80040111 (CLASS_E_CLASSNOTAVAILABLE)).в System.Windows.Forms.SaveFileDialog.CreateVistaDialog () в System.Windows.Forms.FileDialog.RunDialogVista (IntPtr hWndOwner) в System.Windows.Forms.FileDialog.RunDialog (IntPtr hWndOwDomDog.GDog для Windows).(Владелец IWin32Window) в System.Windows.Forms.CommonDialog.ShowDialog ()
Спасибо,
Адар
Обновление: Исправлены StarDocksЭта проблема.если у кого-то возникла такая же проблема, пожалуйста, свяжитесь с ним для исправления.