NOST
NOST copied to clipboard
NOST fails to launch on Win11 with NullReferenceException
Today I haved unlocked my Nokia 8 and try to move into the realm of custom roms for it. I found the threads on XDA about loading T-Virus using the NOST. After installing the NOST tool on my windows 11 PC, I get an error message on start-up. If I select continue, the GUI is initialized partly, but the captions in the form and of the buttons are not resolved. Also the statuses displayed are 'ONLINE_STATUS_UNKNOWN' and 'XXX_STATUS_NO_PHONE'.
The full error log: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.NullReferenceException: Object reference not set to an instance of an object. at MainForms.Form1.DisableOptions() at MainForms.Form1.Form1_Load(Object sender, EventArgs e) 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.ScrollableControl.WndProc(Message& m) at System.Windows.Forms.ContainerControl.WndProc(Message& m) at System.Windows.Forms.Form.WmShowWindow(Message& m) at System.Windows.Forms.Form.WndProc(Message& m) at MainForms.Form1.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: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
NOST Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/NOST.exe
OnlineUpdateTool Assembly Version: 6.0.4.0 Win32 Version: 6.0.4 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/OnlineUpdateTool.EXE
System.Windows.Forms Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
System Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Drawing Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
0Harmony Assembly Version: 1.2.0.1 Win32 Version: 1.2.0.1 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/0Harmony.DLL
System.Core Assembly Version: 3.5.0.0 Win32 Version: 3.5.30729.9151 built by: WinRelRS6 CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
YamlDotNet Assembly Version: 5.0.0.0 Win32 Version: 5.2.1.0 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/YamlDotNet.DLL
HarmonySharedState Assembly Version: 0.0.0.0 Win32 Version: 1.2.0.1 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/0Harmony.dll
System.Web.Services Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Web.Services/2.0.0.0__b03f5f7f11d50a3a/System.Web.Services.dll
System.Security Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Security/2.0.0.0__b03f5f7f11d50a3a/System.Security.dll
Accessibility Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
System.Configuration Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) 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: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
System.Web Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9160 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Web/2.0.0.0__b03f5f7f11d50a3a/System.Web.dll
System.Data.SqlXml Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.9157 (WinRelRS6.050727-9100) CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Data.SqlXml/2.0.0.0__b77a5c561934e089/System.Data.SqlXml.dll
MRG.Controls.UI Assembly Version: 1.0.4854.21889 Win32 Version: 1.0.0.0 CodeBase: file:///C:/Program%20Files%20(x86)/NOST/OST/MRG.Controls.UI.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.
As a temporarily replacement, use my OSTRemote Client instead.
https://forum.xda-developers.com/t/tools-hctsw-care-ostremote-client-batch-script-replacement-of-ost-la.4282019/
command is :
ostremote.cmd -q D:\path\to\t-virus.qlz -e -S
As a temporarily replacement, use my OSTRemote Client instead.
https://forum.xda-developers.com/t/tools-hctsw-care-ostremote-client-batch-script-replacement-of-ost-la.4282019/
command is :
ostremote.cmd -q D:\path\to\t-virus.qlz -e -S
Hi Hikary, Thank you for your hint. I have tried to use OSTRemote Client. First of all the script was not doing much, other than rebooting, when running it with the t-virus.qlz file.
So I did some debugging on your scripts. I'm not yet sure what is causing the issue exactly, but the what I noticed (in CMD prompt on Win11): line 20 of qlz_parser (dir /b *.mlf > %temp%\mlffile.txt
) is yielding an empty mlffile.txt. With Windows explorer I can see files in the qlzout folder, also gnu ls on windows shows the files. But the dir command does not.
By adding /a to the dir command it does. So after changing the statement to dir /a /b *.mlf > %temp%\mlffile.txt
your script works.
@m-koops The issue is caused by a sloppy CultureInfo initialization. If you replace lines 22 to 24 in GetRegionNamePatch.cs with the following lines, the program runs.
int cultureId = int.Parse(value, NumberStyles.AllowHexSpecifier);
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures);
CultureInfo cultureInfo = Array.Find(cultures, culture => culture.LCID == cultureId);
I'll create a pull request for this.