Misstep #1
I changed the super on a container to the name of another container and got the fatal message: “This application encountered a fatal problem and must be shut down”.
Misstep #2
I attempted to Save the project before Xojo shut itself down (I had time because the error dialog was waiting for me to hit Report or Ignore), and Xojo did allow me to successfully save the project in this fatal-error-generating state.
Now when I open the project, this fatal error appears immediately, and requires Xojo to be shutdown before I can correct the name of the super and bring the project back to life.
Is there a way to load a project into the IDE without validation of object names, etc in order to fix problems like this?
There is not. If you saved the project as xml or text, you can edit the name with a text editor. If you saved it as binary, you might be able to hack it with a hex editor. You just need to change one character enough to be able to load it. Then you can correct the name properly.
You would be changing the name of the offending element. Just changing one byte would be enought to get you going again. Finding that one byte, of course… It would be a bit of trial and error. Find every occurrence of the name and change them one at a time until you get success. But since Norm has graciously offered to look at it, you should be ok soon.
Start Xojo
When the project selector dialog comes up PRESS & HOLD THE ALT KEY while you select your project
When it finally opens DO NOT DO ANYTHING OTHER THAN SAVE AS XOJO PROJECT
Then you can edit DgSaveAsNewProtocol in a text editor to change it so there isnt a control on there that is trying to use the dialog its on as the super
That’s the issue here
Theres one line right lose to the beginning like
Begin DgSaveAsNewProtocol dgNewProtocolInt1
to change to to
Begin dgNewProtocolInt dgNewProtocolInt1
Sent you this mod but since I dont have your images you would have a fair amount of fixing to do
This is one of those cases where a text project is a god send
And Time Machine as you could have reverted - dunno if Windows has something similar to that
I will try this as well in case others need it and just to see if it works
Should I submit a suggestion about disabling the Save function once a fatal error has been generated, or are there scenarios where that would actually be desirable and not cause issues? Maybe if Save was disabled, and only Save As was left enabled after a fatal error, users would be prevented from overwriting their projects with fatal-error-generating projects.
Seems more like this one should have stopped you from using a super that was the dialog the control was on
Thats the fundamental problem that caused everything else to go foobar
If you use the old style binary format then use external items. From the context menu you can save your classes, windows etc as external items. Saved my bacon a couple of times.
For anyone who needs this in the future, I tried Tim’s method of searching for the offending element name in a hex editor and replacing it with the correct element name. This seems to have worked. Xojo said the project might be corrupted, but still loaded it. The container in question loaded down at the very bottom of the left panel, colored dark gray and threw errors when trying to compile. I deleted this container and the project compiled fine, seemingly none the worse for wear :).