You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix uint32 cast failure on exit code table in PS 5.1
PS 5.1 parses hex literals > 0x7FFFFFFF as signed Int32
(e.g. 0xC0000005 becomes -1073741819), then [uint32] cast
of a negative value throws at startup. Switch hashtable keys
to formatted hex strings ('0xC0000005') and look up via
'0x{0:X8}' -f $Code. Range comparisons updated to use
plain decimal int64 literals to avoid the same issue.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[uint32]0x00000001=@{ Short="generic error"; Plain="The program exited with a generic failure code - no specific crash reason was recorded." }
54
-
[uint32]0x00000002=@{ Short="file not found"; Plain="The program could not find a file it needed. It may have been moved, deleted, or never installed." }
55
-
[uint32]0x00000003=@{ Short="path not found"; Plain="The program tried to access a folder that does not exist. A reinstall may fix this." }
56
-
[uint32]0x00000005=@{ Short="access denied"; Plain="The program was blocked from accessing a file or resource. Try running as administrator." }
57
-
[uint32]0x00000102=@{ Short="wait timeout"; Plain="The program waited too long for something to respond (a server, a file, another process) and gave up." }
58
-
[uint32]0xC0000005=@{ Short="access violation"; Plain="The program tried to read or write memory it does not own. Usually a bug, bad mod/plugin, or driver conflict. A reinstall or update may help." }
59
-
[uint32]0xC0000017=@{ Short="out of memory"; Plain="The program ran out of memory. Try closing other applications, or your system may need more RAM." }
60
-
[uint32]0xC000001D=@{ Short="illegal instruction"; Plain="The program tried to execute an invalid CPU instruction. This can mean corrupt install files, hardware incompatibility, or overclocking instability." }
61
-
[uint32]0xC000008E=@{ Short="FP divide by zero"; Plain="The program tried to divide a decimal number by zero. This is a bug in the program." }
62
-
[uint32]0xC0000094=@{ Short="integer divide by zero"; Plain="The program tried to divide a whole number by zero. This is a bug in the program." }
63
-
[uint32]0xC00000FD=@{ Short="stack overflow"; Plain="The program ran out of stack space, usually from a function calling itself indefinitely. This is a bug in the program." }
64
-
[uint32]0xC0000135=@{ Short="DLL not found"; Plain="A required library file (.dll) is missing. Try reinstalling the program or installing the relevant runtime (e.g. Visual C++ Redistributable)." }
65
-
[uint32]0xC0000142=@{ Short="DLL init failed"; Plain="A required library loaded but failed to start. This can be caused by a corrupt install, a missing dependency, or an antivirus blocking it." }
66
-
[uint32]0xC0000374=@{ Short="heap corruption"; Plain="The program's memory was corrupted while it was running. Often caused by a bug, an incompatible mod or plugin, or a faulty RAM stick." }
67
-
[uint32]0xC0000409=@{ Short="stack buffer overrun"; Plain="The program wrote data past the end of a reserved memory area. This is a serious bug - if it keeps happening, check for malware or a bad update." }
68
-
[uint32]0xC000041D=@{ Short="unhandled callback exception";Plain="An unhandled error occurred inside a Windows callback. Usually a bug in the program or an incompatible system component." }
69
-
[uint32]0xC0000602=@{ Short="fail fast exception"; Plain="The program detected a critical internal error and shut itself down on purpose. Check the program's own logs for details." }
70
-
[uint32]0xE0434352=@{ Short=".NET CLR exception"; Plain="An unhandled error occurred in a .NET application. Check the Windows Event Viewer (Application log) for the full error message and stack trace." }
71
-
[uint32]0xCFFFFFFF=@{ Short="game/custom crash code"; Plain="The game or program caught an internal error and exited with its own crash code. Check the game's own crash log or support site for details." }
54
+
"0x00000001"=@{ Short="generic error"; Plain="The program exited with a generic failure code - no specific crash reason was recorded." }
55
+
"0x00000002"=@{ Short="file not found"; Plain="The program could not find a file it needed. It may have been moved, deleted, or never installed." }
56
+
"0x00000003"=@{ Short="path not found"; Plain="The program tried to access a folder that does not exist. A reinstall may fix this." }
57
+
"0x00000005"=@{ Short="access denied"; Plain="The program was blocked from accessing a file or resource. Try running as administrator." }
58
+
"0x00000102"=@{ Short="wait timeout"; Plain="The program waited too long for something to respond (a server, a file, another process) and gave up." }
59
+
"0xC0000005"=@{ Short="access violation"; Plain="The program tried to read or write memory it does not own. Usually a bug, bad mod/plugin, or driver conflict. A reinstall or update may help." }
60
+
"0xC0000017"=@{ Short="out of memory"; Plain="The program ran out of memory. Try closing other applications, or your system may need more RAM." }
61
+
"0xC000001D"=@{ Short="illegal instruction"; Plain="The program tried to execute an invalid CPU instruction. This can mean corrupt install files, hardware incompatibility, or overclocking instability." }
62
+
"0xC000008E"=@{ Short="FP divide by zero"; Plain="The program tried to divide a decimal number by zero. This is a bug in the program." }
63
+
"0xC0000094"=@{ Short="integer divide by zero"; Plain="The program tried to divide a whole number by zero. This is a bug in the program." }
64
+
"0xC00000FD"=@{ Short="stack overflow"; Plain="The program ran out of stack space, usually from a function calling itself indefinitely. This is a bug in the program." }
65
+
"0xC0000135"=@{ Short="DLL not found"; Plain="A required library file (.dll) is missing. Try reinstalling the program or installing the relevant runtime (e.g. Visual C++ Redistributable)." }
66
+
"0xC0000142"=@{ Short="DLL init failed"; Plain="A required library loaded but failed to start. This can be caused by a corrupt install, a missing dependency, or an antivirus blocking it." }
67
+
"0xC0000374"=@{ Short="heap corruption"; Plain="The program's memory was corrupted while it was running. Often caused by a bug, an incompatible mod or plugin, or a faulty RAM stick." }
68
+
"0xC0000409"=@{ Short="stack buffer overrun"; Plain="The program wrote data past the end of a reserved memory area. This is a serious bug - if it keeps happening, check for malware or a bad update." }
69
+
"0xC000041D"=@{ Short="unhandled callback exception"; Plain="An unhandled error occurred inside a Windows callback. Usually a bug in the program or an incompatible system component." }
70
+
"0xC0000602"=@{ Short="fail fast exception"; Plain="The program detected a critical internal error and shut itself down on purpose. Check the program's own logs for details." }
71
+
"0xE0434352"=@{ Short=".NET CLR exception"; Plain="An unhandled error occurred in a .NET application. Check the Windows Event Viewer (Application log) for the full error message and stack trace." }
72
+
"0xCFFFFFFF"=@{ Short="game/custom crash code"; Plain="The game or program caught an internal error and exited with its own crash code. Check the game's own crash log or support site for details." }
0 commit comments