user29A / CCDLAB

FITS image interaction, world coordinate solving, point source extraction, photometry, etc. See the github Wiki link below for more info. If you require CCDLAB for UVIT, please ensure you have the UVIT Calibration Database which you can find at the CCDLAB Wiki link below.
https://github.com/user29A/CCDLAB/wiki
8 stars 0 forks source link

Error when launching CCDLAB on Windows 10 Version 21H2 #1

Closed EAlexJ closed 1 year ago

EAlexJ commented 1 year ago

Whenever I start CCDLAB I get an errormessage with the following details:

Informationen` über das Aufrufen von JIT-Debuggen
anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.

************** Ausnahmetext **************
System.ArgumentOutOfRangeException: Der Wert 19 ist für Value ungültig. Value sollte zwischen 'Minimum' und 'Maximum' liegen.
Parametername: Value
   bei System.Windows.Forms.NumericUpDown.set_Value(Decimal value)
   bei CCDLAB.Form1.Form1_Load(Object sender, EventArgs e)
   bei System.Windows.Forms.Form.OnLoad(EventArgs e)
   bei System.Windows.Forms.Form.OnCreateControl()
   bei System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   bei System.Windows.Forms.Control.CreateControl()
   bei System.Windows.Forms.Control.WmShowWindow(Message& m)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.Form.WmShowWindow(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Geladene Assemblys **************
mscorlib
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4614.0 built by: NET48REL1LAST_B.
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll.
----------------------------------------
CCDLAB
    Assembly-Version: 1.0.0.0.
    Win32-Version: 1.0.0.0.
    CodeBase: file:///F:/CCDLab/CCDLAB.exe.
----------------------------------------
System.Windows.Forms
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4550.0 built by: NET48REL1LAST_C.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
----------------------------------------
System
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4605.0 built by: NET48REL1LAST_C.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll.
----------------------------------------
System.Drawing
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4390.0 built by: NET48REL1LAST_C.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
----------------------------------------
JPFITS
    Assembly-Version: 1.0.0.0.
    Win32-Version: 1.0.0.0.
    CodeBase: file:///F:/CCDLab/JPFITS.DLL.
----------------------------------------
System.Configuration
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4190.0 built by: NET48REL1LAST_B.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.
----------------------------------------
System.Core
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4605.0 built by: NET48REL1LAST_C.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll.
----------------------------------------
System.Xml
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4084.0 built by: NET48REL1.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll.
----------------------------------------
System.Windows.Forms.DataVisualization
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4200.0.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.DataVisualization/v4.0_4.0.0.0__31bf3856ad364e35/System.Windows.Forms.DataVisualization.dll.
----------------------------------------
JPChart
    Assembly-Version: 1.0.0.0.
    Win32-Version: 1.0.0.0.
    CodeBase: file:///F:/CCDLab/JPChart.DLL.
----------------------------------------
System.Windows.Forms.DataVisualization.resources
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4084.0.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.DataVisualization.resources/v4.0_4.0.0.0_de_31bf3856ad364e35/System.Windows.Forms.DataVisualization.resources.dll.
----------------------------------------
Accessibility
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4084.0 built by: NET48REL1.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll.
----------------------------------------
System.Windows.Forms.resources
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4084.0 built by: NET48REL1.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
----------------------------------------
mscorlib.resources
    Assembly-Version: 4.0.0.0.
    Win32-Version: 4.8.4084.0 built by: NET48REL1.
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_de_b77a5c561934e089/mscorlib.resources.dll.
----------------------------------------

************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.

Zum Beispiel:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Wenn das JIT-Debuggen aktiviert ist, werden alle nicht behandelten
Ausnahmen an den JIT-Debugger gesendet, der auf dem
Computer registriert ist, und nicht in diesem Dialogfeld behandelt.

Any help is appreciated!

EAlexJ commented 1 year ago

As far as I can tell the error above does not stop CCDLAB from working, just is a nuissance

user29A commented 1 year ago

It may have been missing a new registry entry which it required for setting up a new control recently added. I updated the registry with a fresh installer:

https://github.com/user29A/CCDLAB/releases/tag/2023.05.01

EAlexJ commented 1 year ago

Since this error seems to be related, I decided to reopen the issue:

System.ArgumentOutOfRangeException
  HResult=0x80131502
  Message=Der Wert 9999999999 ist für Value ungültig. Value sollte zwischen 'Minimum' und 'Maximum' liegen.
Parametername: Value
  Source=System.Windows.Forms
  StackTrace:
   at System.Windows.Forms.NumericUpDown.set_Value(Decimal value)
   at CCDLAB.Form1.Form1_Load(Object sender, EventArgs e) in C:\Users\Alex\Downloads\CCDLAB-2023.03.29\CCDLAB\CCDLAB.cs:line 69
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Form.OnCreateControl()
   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 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, Int32 wParam, Int32 lParam)
   at System.Windows.Forms.Form.SetVisibleCore(Boolean value)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at CCDLAB.Program.Main(String[] startargs) in C:\Users\Alex\Downloads\CCDLAB-2023.03.29\CCDLAB\Program.cs:line 24

The error is caused by the following line of code: PSEKernelMaxUpD.Value = Convert.ToDecimal(REG.GetReg("CCDLAB", "PSECountValMax"));

user29A commented 1 year ago

Oh! It is that language culture thing again.

The value is supposed to be

9999999.999

but it looks from the error message that it is

9999999999

What happens is that 9999999,999 get changed to 9999999999 instead of 9999999.999 - or something.

It is reading the registry value in order to load the last-used settings. This control is almost never used, and is set to its maximum value which is 9999999.999. So when CCDLAB loads, it tries to set it to that value, but 9999999.999 gets converted to 9999999999 likely because of the problem of 9999999,999.

Can you change your number format preferences for your OS? Decimals should be ".", instead of ",". I think that there's a Windows setting for that. This is the same issue as with the AstraCarta call.

EAlexJ commented 1 year ago

Following the guide on this microsoft psupport page and making sure the seperator is indeed a period instead of a comma solved this error aswell as allowing AstraCarta to return a query successfully.

TLDR: When using CCDLAB make sure the formatsetting in windows for decimals is a period (".").