PF closes itself

You found a bug or have any issues? Please post them here!
Post Reply
Steve FamilyRadio
Posts: 20
Joined: 11 Jul 2020 12:15
PF closes itself

Post by Steve FamilyRadio »

Dear Bernd,

we have noticed that PF closes itself just before loading a script... maybe a fault in the script that we made?
We have tested the script and we don't get any errors...
But I have copy paste the error from the error log, maybe you can see something in that code?

10/09/2024 13:58:51 [v4.4.4.3]:********** Error/Exception Information **********
Error Message: Error creating window handle.
Error Type: System.ComponentModel.Win32Exception
Error Source: System.Windows.Forms.Void CreateHandle(System.Windows.Forms.CreateParams)
********** System Stack Trace **********
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.TextBoxBase.CreateHandle()
at DevExpress.XtraEditors.TextBoxMaskBox.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.SetVisibleCore(Boolean value)
at DevExpress.XtraEditors.TextEdit.TextEditWorkingStrategy.LayoutChanged(Boolean updateMask)
at DevExpress.XtraEditors.TextEdit.LayoutChanged(Boolean updateMask)
at DevExpress.XtraEditors.BaseEdit.OnHandleCreated(EventArgs e)
at DevExpress.XtraEditors.TextEdit.OnHandleCreated(EventArgs e)
at System.Windows.Forms.Control.WmCreate(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at DevExpress.XtraEditors.XtraControl.WndProc(Message& m)
at DevExpress.Utils.Controls.ControlBase.BaseWndProc(Message& m)
at DevExpress.XtraEditors.BaseControl.WndProc(Message& msg)
at DevExpress.XtraEditors.TextEdit.BaseEditWndProc(Message& msg)
at DevExpress.XtraEditors.TextEdit.TextEditWorkingStrategy.WndProc(Message& msg)
at DevExpress.XtraEditors.PopupBaseEdit.WndProc(Message& msg)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
********** Environment Stack Trace **********
at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
at System.Environment.get_StackTrace()
at ProppFrexx.ErrorDialog.GetExceptionInfo(Exception e, Boolean full)
at ProppFrexx.ProppFrexx_ONAIR.vmnT(Exception )
at ProppFrexx.ProppFrexx_ONAIR.bmn2(Exception )
at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
at System.Windows.Forms.Control.WndProcException(Exception e)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at DevExpress.XtraEditors.BaseEdit.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.UserControl.WndProc(Message& m)
at DevExpress.XtraEditors.XtraUserControl.BaseWndProc(Message& m)
at DevExpress.XtraEditors.XtraUserControl.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at DevExpress.Utils.Drawing.Helpers.NativeMethods.UnsafeNativeMethods.DefSubclassProc(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam)
at DevExpress.Utils.Drawing.Helpers.NativeMethods.UnsafeNativeMethods.DefSubclassProc(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam)
at DevExpress.Utils.Drawing.Helpers.Win32SubclasserFactory.Win32Subclasser.SubClassProcInner(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam, IntPtr uIdSubclass, IntPtr dwRefData)
at System.Windows.Forms.UnsafeNativeMethods.SetParent(HandleRef hWnd, HandleRef hWndParent)
at System.Windows.Forms.UnsafeNativeMethods.SetParent(HandleRef hWnd, HandleRef hWndParent)
at System.Windows.Forms.Control.SetParentHandle(IntPtr value)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at DevExpress.XtraEditors.DForm.WndProc(Message& m)
at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg)
at DevExpress.XtraBars.Ribbon.RibbonForm.WndProc(Message& msg)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Form.CreateHandle()
at DevExpress.XtraEditors.XtraForm.CreateHandle()
at DevExpress.XtraBars.Ribbon.RibbonForm.CreateHandle()
at System.Windows.Forms.Control.get_Handle()
at System.Windows.Forms.Form.SetVisibleCore(Boolean value)
at DevExpress.XtraBars.Ribbon.RibbonForm.SetVisibleCore(Boolean value)
at System.Windows.Forms.Control.Show()
at ProppFrexx.ProppFrexx_ONAIR.StartProgram(Playlist pls, ScriptProgram prog, Boolean allowLateStart, Boolean suppressAutoPlay)
at ProppFrexx.ProppFrexx_ONAIR.mmWD(Object , ReminderEventArgs )
at DevExpress.XtraScheduler.SchedulerStorageBase.RaiseReminderAlert(ReminderEventArgs e)
at DevExpress.XtraScheduler.SchedulerStorageBase.OnRemindersAlerted(Object sender, ReminderEventArgs e)
at DevExpress.XtraScheduler.Native.ReminderEngine.OnReminderAlert(Object sender, ReminderBaseEventArgs e)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.RaiseRemindersAlertsCore(ReminderBaseEventArgs args)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.RaiseRemindersAlerts(DateTime currentTime)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.OnTimerTick(Object sender, EventArgs e)
at DevExpress.Portable.PortableDispatchedTimer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at JQ.mx.Main(String[] args)
********** End **********

10/09/2024 13:58:52 [v4.4.4.3]:********** Error/Exception Information **********
Error Message: Exception has been thrown by the target of an invocation.
Error Type: System.Reflection.TargetInvocationException
Error Source: mscorlib.Void SerializationInvoke(System.IRuntimeMethodInfo, System.Object, System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext ByRef)
Inner Exception: Het actieve proces heeft alle toegestane systeemingangen gebruikt voor Windows-beheerobjecten
********** System Stack Trace **********
at System.RuntimeMethodHandle.SerializationInvoke(IRuntimeMethodInfo method, Object target, SerializationInfo info, StreamingContext& context)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Resources.ResourceReader.DeserializeObject(Int32 typeIndex)
at System.Resources.ResourceReader.LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
at System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString)
at System.Resources.ResourceManager.GetObject(String name, CultureInfo culture, Boolean wrapUnmanagedMemStream)
at ProppFrexx.ErrorDialog.v6QI()
at ProppFrexx.ErrorDialog..ctor(Exception e, Boolean getFullInfo)
at ProppFrexx.ProppFrexx_ONAIR.bmn2(Exception )
at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
at System.Windows.Forms.Control.WndProcException(Exception e)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Error Message: Het actieve proces heeft alle toegestane systeemingangen gebruikt voor Windows-beheerobjecten
Error Type: System.ComponentModel.Win32Exception
Error Source: System.Drawing.Void Initialize(Int32, Int32)
********** System Stack Trace **********
at System.Drawing.Icon.Initialize(Int32 width, Int32 height)
********** Environment Stack Trace **********
at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
at System.Environment.get_StackTrace()
at ProppFrexx.ErrorDialog.GetExceptionInfo(Exception e, Boolean full)
at ProppFrexx.ProppFrexx_ONAIR.vmnT(Exception )
at ProppFrexx.ProppFrexx_ONAIR.bmn2(Exception )
at System.RuntimeMethodHandle.SerializationInvoke(IRuntimeMethodInfo method, Object target, SerializationInfo info, StreamingContext& context)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
at System.Resources.ResourceReader.DeserializeObject(Int32 typeIndex)
at System.Resources.ResourceReader.LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
at System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString)
at System.Resources.ResourceManager.GetObject(String name, CultureInfo culture, Boolean wrapUnmanagedMemStream)
at ProppFrexx.ErrorDialog.v6QI()
at ProppFrexx.ErrorDialog..ctor(Exception e, Boolean getFullInfo)
at ProppFrexx.ProppFrexx_ONAIR.bmn2(Exception )
at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
at System.Windows.Forms.Control.WndProcException(Exception e)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at DevExpress.XtraEditors.BaseEdit.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.UserControl.WndProc(Message& m)
at DevExpress.XtraEditors.XtraUserControl.BaseWndProc(Message& m)
at DevExpress.XtraEditors.XtraUserControl.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at DevExpress.Utils.Drawing.Helpers.NativeMethods.UnsafeNativeMethods.DefSubclassProc(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam)
at DevExpress.Utils.Drawing.Helpers.NativeMethods.UnsafeNativeMethods.DefSubclassProc(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam)
at DevExpress.Utils.Drawing.Helpers.Win32SubclasserFactory.Win32Subclasser.SubClassProcInner(IntPtr hWnd, IntPtr Msg, IntPtr wParam, IntPtr lParam, IntPtr uIdSubclass, IntPtr dwRefData)
at System.Windows.Forms.UnsafeNativeMethods.SetParent(HandleRef hWnd, HandleRef hWndParent)
at System.Windows.Forms.UnsafeNativeMethods.SetParent(HandleRef hWnd, HandleRef hWndParent)
at System.Windows.Forms.Control.SetParentHandle(IntPtr value)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at DevExpress.XtraEditors.DForm.WndProc(Message& m)
at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg)
at DevExpress.XtraBars.Ribbon.RibbonForm.WndProc(Message& msg)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Form.CreateHandle()
at DevExpress.XtraEditors.XtraForm.CreateHandle()
at DevExpress.XtraBars.Ribbon.RibbonForm.CreateHandle()
at System.Windows.Forms.Control.get_Handle()
at System.Windows.Forms.Form.SetVisibleCore(Boolean value)
at DevExpress.XtraBars.Ribbon.RibbonForm.SetVisibleCore(Boolean value)
at System.Windows.Forms.Control.Show()
at ProppFrexx.ProppFrexx_ONAIR.StartProgram(Playlist pls, ScriptProgram prog, Boolean allowLateStart, Boolean suppressAutoPlay)
at ProppFrexx.ProppFrexx_ONAIR.mmWD(Object , ReminderEventArgs )
at DevExpress.XtraScheduler.SchedulerStorageBase.RaiseReminderAlert(ReminderEventArgs e)
at DevExpress.XtraScheduler.SchedulerStorageBase.OnRemindersAlerted(Object sender, ReminderEventArgs e)
at DevExpress.XtraScheduler.Native.ReminderEngine.OnReminderAlert(Object sender, ReminderBaseEventArgs e)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.RaiseRemindersAlertsCore(ReminderBaseEventArgs args)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.RaiseRemindersAlerts(DateTime currentTime)
at DevExpress.XtraScheduler.Native.ReminderEngineBase.OnTimerTick(Object sender, EventArgs e)
at DevExpress.Portable.PortableDispatchedTimer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.OnTick(EventArgs e)
at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at JQ.mx.Main(String[] args)
********** End **********
User avatar
radio42
Site Admin
Posts: 8926
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: PF closes itself

Post by radio42 »

The inner exception seems to be the issue:
Inner Exception: Het actieve proces heeft alle toegestane systeemingangen gebruikt voor Windows-beheerobjecten

I.e. the system has used all system resources?
And that's why ProppFrexx tries to dispay an error dialog, which was then not even possible, as not even a system handle for that error dialog was available.
Probably ProppFrexx was running out of memory.

Note, that the error is thrown when a new program is about to be started but the script was not even executed at that time. Ie. the script is not the issue.

Does the problem also happen, after you rebooted the entire PC? Can you reproduce the issue?
If yes, what are your specifications of the machine. Can you monitor the memory usage of ProppFrexx in the task manager? How is the memory behaving when you start the scheduler?
Steve FamilyRadio
Posts: 20
Joined: 11 Jul 2020 12:15
Re: PF closes itself

Post by Steve FamilyRadio »

Hello Bernd,

thanks for the info!

Last week we have replaced the previous computer where this PF was also crashing with a new and faster one, and still seem to have the problem.
I will have to do the tests during the night as it will have some impact on our listeners. As soon as I have done the tests I will let you know.

Old machine
Intel i3 3240
DDR3 1200Mhz 16GB

Current machine
AMD Ryzen 5 3400
DDR4 3000Mhz 16GB

Regards,
Steve
User avatar
radio42
Site Admin
Posts: 8926
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: PF closes itself

Post by radio42 »

Maybe the .calendar file is corrupted somehow?
E.g. go to the PF AppUserData folder and locate the .calendar file of the scheduler.
Make a backup (just in case) and delete then delete the file. Start PF and now you have an empty program scheduler. Now recreate your resp. entry and test, if PF still crashes.

If it now works, you found the issue and need to recreate all other schedules.
If it still crashes, we must further investigate the reason and you can copy back the backup.
Always close PF when you change the .calendar file!

Post Reply