In the bizarre case that some files are not owned by the current user (for example, a mod install with admin rights which didn't set permissions properly), the game crashes. Hopefully, a useful debug message was in the debug log. But it took me time to remark there was such an option... perhaps turning debug mode by default after a crash would be a good idea ?
Thanks for this incredibly neat tool by the way !
2020-05-18 14:28:27.276 +02:00 [Debug] Clearing read-only marker (if any) on file: C:\Program Files (x86)\Mass Effect 3\BIOGame\DLC\DLC_CON_MEHEM\CookedPCConsole\BioD_End002_500Choice.pcc
2020-05-18 14:28:27.311 +02:00 [Fatal] ALOT Installer has crashed! This is the exception that caused the crash:
2020-05-18 14:28:27.311 +02:00 [Fatal] TargetInvocationException: Une exception s'est produite lors de l'opération, ce qui rend le résultat non valide. Consultez InnerException pour plus de détails sur l'exception.
à System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
à AlotAddOnGUI.MainWindow.InstallCompleted(Object sender, RunWorkerCompletedEventArgs e) dans E:\Documents\Visual Studio 2015\Projects\AlotAddOnGUI\AlotAddOnGUI\ui\ALOT_InstallMode_ThreadedTasks.cs:ligne 1126
à System.ComponentModel.BackgroundWorker.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e)
à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
ArgumentException: L'accès au chemin d'accès est refusé.
à System.IO.FileSystemInfo.set_Attributes(FileAttributes value)
à AlotAddOnGUI.Utilities.MakeAllFilesInDirReadWrite(String directory) dans E:\Documents\Visual Studio 2015\Projects\AlotAddOnGUI\AlotAddOnGUI\Utilites.cs:ligne 892
à AlotAddOnGUI.MainWindow.InstallALOTContextBased(Object sender, DoWorkEventArgs e) dans E:\Documents\Visual Studio 2015\Projects\AlotAddOnGUI\AlotAddOnGUI\ui\ALOT_InstallMode_ThreadedTasks.cs:ligne 387
à System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
à System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)