I readily admit that I am not yet an accomplished Windows admin. I have been using Linux for a number of years, now, and am just entering an environment where the majority of what I am doing is Windows. Therefore, please forgive me for any lack of knowledge in administering the system on which I have placed the player. I will continue to learn.
I am continuing to see problems with the player crashing. I have attempted to monitor and find the problem, but I am not sure even how to do this on this computer, and I feel that I am struggling to even describe what I am seeing correctly as a result. As such, here is the information I have gathered following yet another crash of the player:
When I clicked the Details button on the above window, I got the following information:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ComponentModel.Win32Exception: Not enough storage is available to process this command
at System.Drawing.BufferedGraphicsContext.CreateCompatibleDIB(IntPtr hdc, IntPtr hpal, Int32 ulWidth, Int32 ulHeight, IntPtr& ppvBits)
at System.Drawing.BufferedGraphicsContext.CreateBuffer(IntPtr src, Int32 offsetX, Int32 offsetY, Int32 width, Int32 height)
at System.Drawing.BufferedGraphicsContext.AllocBuffer(Graphics targetGraphics, IntPtr targetDC, Rectangle targetRectangle)
at System.Drawing.BufferedGraphicsContext.AllocBufferInTempManager(Graphics targetGraphics, IntPtr targetDC, Rectangle targetRectangle)
at System.Drawing.BufferedGraphicsContext.Allocate(IntPtr targetDC, Rectangle targetRectangle)
at System.Windows.Forms.Control.WmPaint(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
XiboClient
Assembly Version: 2.0.0.0
Win32 Version: 2.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Xibo%20Player/XiboClient.exe
System
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5495 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
System.Xml
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
System.Management
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Management/2.0.0.0__b03f5f7f11d50a3a/System.Management.dll
System.Web.Services
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Web.Services/2.0.0.0__b03f5f7f11d50a3a/System.Web.Services.dll
xnnaygbk
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Deployment
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.5493 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Deployment/2.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll
tge7iezq
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
qu6eaxcr
Assembly Version: 2.0.0.0
Win32 Version:
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Should I enable JIT debugging?
I also captured the memory usage as it was at the discovery that the player had crashed again. I am not sure how long this computer was in this state at this time, as Windows Event Viewer shows the event being recorded at the time when I closed the dialog and not when it actually occurred. Here is a screenshot of the Resource Monitor that was running at the time:
I can watch the amount of memory used by XiboPlayer.exe go up from an initial ~400,000KB up to what shows in that image. It is slow, but it definitely continues to eat up memory. As you can see, the rest of the items listed are using minimal memory.
For clarity, I have exported the layout I am using, and it can be found here:
The webpage that I am trying to display is weather. I understand that there is a forecast.io module; I have explored it and am not able to get it to do what I need, which is display hourly weather data for the location in which this player will be viewed. The forecast.io module currently shows only 5 days, Current day, Daily, and Picture. Exploration of the forecast.io website seems to indicate that they do not provide that kind of detail, so I have been trying to do it manually.
If there is anything specific that I can do to obtain further troubleshooting information, I am very interested in digging into this. I need this to operate as expected, but have not been able to get it to stay running regardless of any attempts I have made, including using processalive-0.9.exe to keep it running (this fails because the crash requires intervention to get the application to fully close, so processalive never sees it as stopped), scheduling a daily reboot in Task Scheduler (this option works, except that the player always crashes a long time before the reboot, which means the display is not being shown for an indeterminate amount of time), and attempting to use Task Scheduler to simply restart the player if it stopped, but that never worked, either.
Edit: I also attempted to use rundll32 to clear memory on an hourly basis using Task Scheduler, but it didn’t seem to help.
I appreciate all continued efforts here.
Chris