Надстройка Excel создает исключение SHException - PullRequest
0 голосов
/ 31 января 2012

У меня есть надстройка Excel, написанная на C #, .NET 35 SP1 используя ExcelDNA, NetOffice Иногда клиенты сообщали, что моя надстройка исчезла из Excel, я проверяю, находится ли она в списке отключенных надстроек, Я включаю его, и он снова работает. Я проверил свой журнал и увидел исключение SHException. Не уверен, что вызывает и как это исправить. спасибо

Я заметил, что у клиента есть несколько других надстроек в Excel. Также есть .NET 1.1, .NET 2.0, .NET 3.0, NET 35 SP1

2012-01-31 07:10:12,672 [1] ERROR Shared.Helper [(null)] - Name:SEHException
Message:External component has thrown an exception.
Target:Int32 IntGetMessageW(System.Windows.Interop.MSG ByRef, System.Runtime.InteropServices.HandleRef, Int32, Int32)
Stack:   at MS.Win32.UnsafeNativeMethods.IntGetMessageW(MSG& msg, HandleRef hWnd, Int32 uMsgFilterMin, Int32 uMsgFilterMax)
   at MS.Win32.UnsafeNativeMethods.GetMessageW(MSG& msg, HandleRef hWnd, Int32 uMsgFilterMin, Int32 uMsgFilterMax)
   at System.Windows.Threading.Dispatcher.GetMessage(MSG& msg, IntPtr hwnd, Int32 minMessage, Int32 maxMessage)
   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at System.Windows.Window.ShowHelper(Object booleanBox)
   at System.Windows.Window.Show()
   at System.Windows.Window.ShowDialog()
   at ExcelAddIn.Connect.ShowRefreshUI(Boolean checkForSettings, Boolean isRefreshAll)

1 Ответ

0 голосов
/ 01 февраля 2012

спасибо, Джош Кристи.Найденное решение @ http://www.joshchristie.com/weblog/archives/2003_09.html

Вызов DoEvents после EnableVisualStyles Эту ошибку в версии .NET Framework версии 1.1, к счастью, можно устранить, вызвав Application.DoEvents () сразу после вызова Application.EnableVisualStyles ().Вот и все, проблема решена.:)

и Скотт Хансельман http://www.hanselman.com/blog/EnableVisualStylesStrikesAgain.aspx

...