Oct 08

Resolved: Cannot open MultiPoint Dashboard: Application Error 1000, WmsDashboard.exe, Kernelbase.dll

Resolved: Cannot open MultiPoint Dashboard: Application Error 1000, WmsDashboard.exe, Kernelbase.dll

After working for several months with MultiPoint Server 2016 I eventually was unable to use the MultiPoint Dashboard which is one of the main features. As you can imagine, one of the main reasons MultiPoint is deployed is because of the ability to provide support to remote desktop users using the server. One can easily chat with any user of the system as well as see their desktop to help them troubleshoot any issue as well as take over the session to better guide them. You can also share information via screen share with everyone connected making it a great collaboration/educational tool. As of late though when launching the MultiPoint Dashboard which is the center piece of these features, I came across an error. Now, I didn’t realize that until I saw the even log in the server. As I launched the application there was no indication an error was occurring and I just kept waiting for the MultiPoint Dashboard to open up. If you open the event viewer, you will see error messages similar to the following three:

Log Name: Application
Source: Application Error
Date: 08/10/2017 11:05:50 a. m.
Event ID: 1000
Task Category: (100)
Level: Error
Keywords: Classic
User: N/A
Computer: MyComputer.DnsSuffix
Description:
Faulting application name: WmsDashboard.exe, version: 10.0.14393.1532, time stamp: 0x5965a008
Faulting module name: KERNELBASE.dll, version: 10.0.14393.1715, time stamp: 0x59b0d106
Exception code: 0xc000041d
Fault offset: 0x0000000000033c58
Faulting process id: 0x13c4
Faulting application start time: 0x01d3404f4d56fa07
Faulting application path: C:\Program Files\Windows MultiPoint Server\WmsDashboard.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: 8eb8808b-07d9-49ac-9ea6-10fc604fae27
Faulting package full name:
Faulting package-relative application ID:
Event Xml:
<Event xmlns=”http://schemas.microsoft.com/win/2004/08/events/event”>
<System>
<Provider Name=”Application Error” />
<EventID Qualifiers=”0″>1000</EventID>
<Level>2</Level>
<Task>100</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime=”2017-10-08T16:05:50.513385500Z” />
<EventRecordID>242987</EventRecordID>
<Channel>Application</Channel>
<Computer>ComputerName</Computer>
<Security />
</System>
<EventData>
<Data>WmsDashboard.exe</Data>
<Data>10.0.14393.1532</Data>
<Data>5965a008</Data>
<Data>KERNELBASE.dll</Data>
<Data>10.0.14393.1715</Data>
<Data>59b0d106</Data>
<Data>c000041d</Data>
<Data>0000000000033c58</Data>
<Data>13c4</Data>
<Data>01d3404f4d56fa07</Data>
<Data>C:\Program Files\Windows MultiPoint Server\WmsDashboard.exe</Data>
<Data>C:\Windows\System32\KERNELBASE.dll</Data>
<Data>8eb8808b-07d9-49ac-9ea6-10fc604fae27</Data>
<Data>
</Data>
<Data>
</Data>
</EventData>
</Event>

 

Log Name: Application
Source: Application Error
Date: 08/10/2017 11:05:48 a. m.
Event ID: 1000
Task Category: (100)
Level: Error
Keywords: Classic
User: N/A
Computer: ComputerName
Description:
Faulting application name: WmsDashboard.exe, version: 10.0.14393.1532, time stamp: 0x5965a008
Faulting module name: KERNELBASE.dll, version: 10.0.14393.1715, time stamp: 0x59b0d106
Exception code: 0xe0434352
Fault offset: 0x0000000000033c58
Faulting process id: 0x13c4
Faulting application start time: 0x01d3404f4d56fa07
Faulting application path: C:\Program Files\Windows MultiPoint Server\WmsDashboard.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report Id: 45bd25db-11e8-4443-84b9-4ed5d98016c5
Faulting package full name:
Faulting package-relative application ID:
Event Xml:
<Event xmlns=”http://schemas.microsoft.com/win/2004/08/events/event”>
<System>
<Provider Name=”Application Error” />
<EventID Qualifiers=”0″>1000</EventID>
<Level>2</Level>
<Task>100</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime=”2017-10-08T16:05:48.393395100Z” />
<EventRecordID>242985</EventRecordID>
<Channel>Application</Channel>
<Computer>ComputerName</Computer>
<Security />
</System>
<EventData>
<Data>WmsDashboard.exe</Data>
<Data>10.0.14393.1532</Data>
<Data>5965a008</Data>
<Data>KERNELBASE.dll</Data>
<Data>10.0.14393.1715</Data>
<Data>59b0d106</Data>
<Data>e0434352</Data>
<Data>0000000000033c58</Data>
<Data>13c4</Data>
<Data>01d3404f4d56fa07</Data>
<Data>C:\Program Files\Windows MultiPoint Server\WmsDashboard.exe</Data>
<Data>C:\Windows\System32\KERNELBASE.dll</Data>
<Data>45bd25db-11e8-4443-84b9-4ed5d98016c5</Data>
<Data>
</Data>
<Data>
</Data>
</EventData>
</Event>

 

Log Name: Application
Source: .NET Runtime
Date: 08/10/2017 11:05:48 a. m.
Event ID: 1026
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Computer: ComputerName
Description:
Application: WmsDashboard.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Net.WebException
at System.Net.HttpWebRequest.GetResponse()
at System.ServiceModel.Channels.HttpChannelFactory`1+HttpRequestChannel+HttpChannelRequest[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].WaitForReply(System.TimeSpan)

Exception Info: System.ServiceModel.Security.SecurityNegotiationException

Server stack trace:
at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.SecurityChannelFactory
1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessage)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(System.Runtime.Remoting.Proxies.MessageData ByRef, Int32)
at IMultiPointServer.GetWmsWebLimiting(GetWmsWebLimitingRequest)
at MultiPointServerClient.GetWmsWebLimiting(Boolean ByRef, System.String ByRef, System.String ByRef)
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility+<>c__DisplayClass105_0.<GetGlobalWebLimiting>b__0()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility.ExecuteCoreCall(System.String, System.Action)
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility.GetGlobalWebLimiting()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.WmsStatusManager..ctor()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.WmsStatusManager.get_Singleton()
at Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindowViewModel..ctor(Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.IThreadManager, Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.ISavedSettings, System.Action`1<System.Action>, Microsoft.SharedComputing.Utils.ILogger, Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindow)
at Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindow.MainWindow_Loaded(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.BroadcastEventHelper.BroadcastEvent(System.Windows.DependencyObject, System.Windows.RoutedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(System.Object)
at MS.Internal.LoadedOrUnloadedOperation.DoWork()
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object)
at System.Windows.Media.MediaContext.RenderMessageHandler(System.Object)
at System.Windows.Interop.HwndTarget.OnResize()
at System.Windows.Interop.HwndTarget.HandleMessage(MS.Internal.Interop.WindowMessage, IntPtr, IntPtr)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

 

Event Xml:
<Event xmlns=”http://schemas.microsoft.com/win/2004/08/events/event”>
<System>
<Provider Name=”.NET Runtime” />
<EventID Qualifiers=”0″>1026</EventID>
<Level>2</Level>
<Task>0</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime=”2017-10-08T16:05:48.278396200Z” />
<EventRecordID>242984</EventRecordID>
<Channel>Application</Channel>
<Computer>ComputerName</Computer>
<Security />
</System>
<EventData>
<Data>Application: WmsDashboard.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Net.WebException
at System.Net.HttpWebRequest.GetResponse()
at System.ServiceModel.Channels.HttpChannelFactory`1+HttpRequestChannel+HttpChannelRequest[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].WaitForReply(System.TimeSpan)

Exception Info: System.ServiceModel.Security.SecurityNegotiationException

Server stack trace:
at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.SecurityChannelFactory
1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessage)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(System.Runtime.Remoting.Proxies.MessageData ByRef, Int32)
at IMultiPointServer.GetWmsWebLimiting(GetWmsWebLimitingRequest)
at MultiPointServerClient.GetWmsWebLimiting(Boolean ByRef, System.String ByRef, System.String ByRef)
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility+&lt;&gt;c__DisplayClass105_0.&lt;GetGlobalWebLimiting&gt;b__0()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility.ExecuteCoreCall(System.String, System.Action)
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.UIUtility.GetGlobalWebLimiting()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.WmsStatusManager..ctor()
at Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.WmsStatusManager.get_Singleton()
at Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindowViewModel..ctor(Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.IThreadManager, Microsoft.WindowsServerSolutions.MultipointServer.AdminUI.Library.ISavedSettings, System.Action`1&lt;System.Action&gt;, Microsoft.SharedComputing.Utils.ILogger, Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindow)
at Microsoft.WindowsServerSolutions.MultipointServer.MPDashboard.MainWindow.MainWindow_Loaded(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.BroadcastEventHelper.BroadcastEvent(System.Windows.DependencyObject, System.Windows.RoutedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(System.Object)
at MS.Internal.LoadedOrUnloadedOperation.DoWork()
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(System.Object)
at System.Windows.Media.MediaContext.RenderMessageHandler(System.Object)
at System.Windows.Interop.HwndTarget.OnResize()
at System.Windows.Interop.HwndTarget.HandleMessage(MS.Internal.Interop.WindowMessage, IntPtr, IntPtr)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)

</Data>
</EventData>
</Event>


The key here is on the last error. This is a System.ServiceModel.Security.SecurityNegotiationException within an http channel which could mean several things but after doing some research confirms what others have been experiencing. Because MultiPoint works by connecting to a web service (being local or remote, as you can mange remote computers), the security negotiation error points in this case to an invalid password or security certificate. My guess is that the security certificate for the web service is expired basically rending it invalid. Now, how to change that is beyond my knowledge but there is an easy fix: Reinstall MultiPoint service:

 

  1. From server manager, click “Remove roles and features” from the “Manage” menu on the top right corner of the UI.
  2. The third page of the wizard, after Server Selection, is the Server Roles page.  Locate “MultiPoint Services” in the list and uncheck the box.
  3. After MultiPoint has been removed (the server should reboot, you can delete the registry key under “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows MultiPoint Server”.  Delete the entire reg key using regedit.
  4. Now re-install MultiPoint.  MultiPoint will create a new security certificate and password.

Be careful not to skip step number 3. I’ve reinstalled MultiPoint service hoping it would magically fix the issue but it never did. I had to keep waiting for someone to publish an answer that included how to force the security certificate to be regenerated. My guess is that this error happens after a year of installing the server thereabouts. I also found information on how to remove the certificate manually if you prefer that route:

If you want to try to manually remove the certificate, follow these steps:

  1. You will need your local host name.  If you don’t know that, you can run the command “hostname” from a command prompt and it will tell you the computer’s host name.
  2. From a command prompt run “Net stop wms”.  You will need to be running in an elevated command prompt as an administrator.
  3. From a command prompt run “mmc.exe”.  You will also need to be running in an elevated command prompt as an administrator.
  4. CTRL+M to add a new snap-in
  5. From the list of available snap-ins on the left, choose certificates, then add it to the list.  There will be a popup dialog.  Choose computer account from the three options, then choose local computer
  6. Find “MultiPoint Services Certificates” in the list of  certificates for the local computer.  Delete all the certificates where “Issued By” is the local host name.
  7. Now run “net start wms”.  When the MultiPoint service starts, it will create a new certificate for you.  This should fix the problem.

Leave a Reply

%d bloggers like this: