Albeoris / Memoria

Final Fantasy IX tools
MIT License
381 stars 49 forks source link

After installing latest version of Memoria the game won't start #248

Closed ZethrasGorgoth closed 9 months ago

ZethrasGorgoth commented 1 year ago

This started to show up after I upgraded Memoria to the latest version from v2021.01.18, and it keeps repeating for every single version after that. What basically happens is that the launcher takes several minutes to boot up after clicking it. It shows in the task manager and from there there are two possible outcomes:

1 - The launcher opens and lets me click on "play", which sometimes leads to an error and some other times makes me wait for several other minutes before either showing up the launcher again or giving me the error 2 - I get the above error right away, again after several minutes of wait (usually 7 to 10 minutes). For reference, this is the message I'm getting:


Critical error

A critical error occurred during the operation of the program.

Further work of the program may lead to data corruption. The application will be closed.

Please press Ctrl+C to copy the exception details, and contact the author to fix the problem.

System.OutOfMemoryException: Generata eccezione di tipo 'System.OutOfMemoryException'.

in System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)

in System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)

in System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)

in System.Activator.CreateInstance(Type type, Boolean nonPublic)

in System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)

in System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)

in System.Activator.CreateInstance(Type type, Object[] args)

in System.Xaml.Schema.SafeReflectionInvoker.CreateInstanceCritical(Type type, Object[] arguments)

in System.Xaml.Schema.SafeReflectionInvoker.CreateInstance(Type type, Object[] arguments)

in System.Xaml.Schema.XamlTypeInvoker.CreateInstance(Object[] arguments)

in MS.Internal.Xaml.Runtime.ClrObjectRuntime.CreateInstanceWithCtor(XamlType xamlType, Object[] args)

in MS.Internal.Xaml.Runtime.ClrObjectRuntime.CreateInstance(XamlType xamlType, Object[] args)

in MS.Internal.Xaml.Runtime.PartialTrustTolerantRuntime.CreateInstance(XamlType xamlType, Object[] args)

in System.Xaml.XamlObjectWriter.Logic_CreateAndAssignToParentStart(ObjectWriterContext ctx)

in System.Xaml.XamlObjectWriter.WriteStartMember(XamlMember property)

in System.Xaml.XamlWriter.WriteNode(XamlReader reader)

in System.Windows.Markup.WpfXamlLoader.TransformNodes(XamlReader xamlReader, XamlObjectWriter xamlWriter, Boolean onlyLoadOneNode, Boolean skipJournaledProperties, Boolean shouldPassLineNumberInfo, IXamlLineInfo xamlLineInfo, IXamlLineInfoConsumer xamlLineInfoConsumer, XamlContextStack`1 stack, IStyleConnector styleConnector)

in System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)

in System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)

in System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)

in System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)

in System.Windows.Application.LoadComponent(Uri resourceLocator, Boolean bSkipJournaledProperties)

in System.Windows.Application.DoStartup()

in System.Windows.Application.<.ctor>b__1_0(Object unused)

in System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

in System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

in System.Windows.Threading.DispatcherOperation.InvokeImpl()

in System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)

in MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)

in System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

in System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)

in System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

in MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)

in System.Windows.Threading.DispatcherOperation.Invoke()

in System.Windows.Threading.Dispatcher.ProcessQueue()

in System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

in MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

in MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)

in System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

in System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

in System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)

in MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)

in MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)

in System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)

in System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)

in System.Windows.Application.RunDispatcher(Object ignore)

in System.Windows.Application.RunInternal(Window window)

in System.Windows.Application.Run(Window window)

in System.Windows.Application.Run()

in Memoria.Launcher.App.Main()

OK

WarpedEdge commented 1 year ago

Could you walk us through how you upgraded to the latest version and if you had anything installed prior, or if its vanilla. This would help us a lot to assist.

barkermn01 commented 9 months ago

This would appear to be a system problem,

But basically, your system has had that much running that there is not enough memory space available in a single block of memory sort of like the olden days of Defragging a Disk, there needs to be enough continuous space that the game reserves when it launches and there is not the reason it takes so long to happen is that windows is trying it's best to move clean and move unused space to give you a bigger block, but unfortunately if any application is still running it can't move it.

If you ever see this try restarting your PC, make sure your PC has at least 8GB of memory if your using windows 10 or 11 the bare minimum i would recommend is 16GB.

Source: https://stackoverflow.com/questions/1153702/system-outofmemoryexception-was-thrown-when-there-is-still-plenty-of-memory-fr