schwerpunk Posted January 2, 2014 Windows 7 64bit Heya, was faffing about with custom sprites and Decorate scripts earlier, and all was well, but now SLADE 3 won't even show me a splash screen before giving me the error "*** Caught unhandled unknown exception; terminating." Error log just shows this: 17:17:26: SLADE - It's a Doom Editor 17:17:26: Version 3.1.0 beta 2 17:17:26: Written by Simon Judd, 2008-2014 17:17:26: Compiled with wxWidgets 3.0.0 and SFML 2.0 17:17:26: -------------------------------- 17:17:26: Loading configuration I've tried reinstalling; tried uninstalling then installing; tried redownloading the Microsoft Visual C++ 2010 Redistributable Package; tried launching as an administrator; rebooted several times, and applied the above to both the SVN and beta builds. I'm just stumped! EDIT: Well, I feel dumb. After installing, in a separate folder, SLADE v3.0.2, it launches just fine. What's even weirder is that the Dev & Beta builds now work as well!!! Although it gives me the 'first time startup' message (not that I'm complaining). So yeah, delete this thread if you like, but I'd still like to know what exactly got into my computer. :P 0 Share this post Link to post
Maes Posted February 3, 2014 schwerpunk said:After installing, in a separate folder, SLADE v3.0.2... And I suppose that when it worked, you did NOT place it in the usual "Program Files (x86)" folder (does SLADE even have an installer or just a zip with the program's files?), and/or gave it full administrative/access privileges. Simply put, SLADE does not adhere to the Holy UAC's (User Access Control) design standards used since Windows Vista/7/8, which state that every program should only write in a specific folder in the user's docs, and NEVER to its folder in Program Files (x86). Software like XWE, SLADE etc. blissfully ignore this, being written without Windows Vista's/7's/8's strict requirements in mind, and just write config files to their working directory. Of course this might cause some problems...like not being able to read/write config files. 0 Share this post Link to post
Gez Posted February 3, 2014 Maes said:Simply put, SLADE does not adhere to the Holy UAC's (User Access Control) design standards It actually does. If you have installed SLADE 3 on a Win box, go to %APPDATA%\SLADE3 and be amazed. Unless, of course, you are using a portable install of SLADE 3. It uses a rather unusual system to determine whether the install is portable or not: it looks for the presence of a file named portable (without extension) in the same folder as the executable. /* MainApp::initDirectories * Checks for and creates necessary application directories. Returns * true if all directories existed and were created successfully if * needed, false otherwise *******************************************************************/ bool MainApp::initDirectories() { // Setup separator character #ifdef WIN32 string sep = "\"; #else string sep = "/"; #endif // Setup app dir dir_app = wxFileName( wxStandardPaths::Get().GetExecutablePath()).GetPath(); // Check for portable install if (wxFileExists(appPath("portable", DIR_APP))) { // Setup portable user/data dirs dir_data = dir_app; dir_user = dir_app + sep + "config"; } else { // Setup standard user/data dirs dir_user = wxStandardPaths::Get().GetUserDataDir(); dir_data = wxStandardPaths::Get().GetDataDir(); } // Create user dir if necessary if (!wxDirExists(dir_user)) { if (!wxMkdir(dir_user)) { wxMessageBox(S_FMT( "Unable to create user directory "%s"", dir_user), "Error", wxICON_ERROR); return false; } } // Check data dir if (!wxDirExists(dir_data)) dir_data = dir_app; // Use app dir if data dir doesn't exist return true; }Now, there is a problem that I found and addressed recently that can cause problems depending on the directory: if you install SLADE 3 (official release) in the same directory as SLumpEd or a severely outdated dev build, it might try to load resources from the res folder, assuming them to exist, while they do not. 0 Share this post Link to post