View Issue Details

IDProjectCategoryView StatusLast Update
0000588FSSCPlauncherpublic2006-06-04 00:21
ReporterGoober5000 Assigned Totaylor  
PriorityhighSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Summary0000588: Missing OpenAL dll file should trigger a better error message than "flag file not found"
DescriptionWell, it should. :)
TagsNo tags attached.

Activities

taylor

2005-10-13 20:52

administrator   ~0003556

We just need to do a little GetLastError(), FormatMessage() and MessageBox() mojo in Win32func.cpp, run_file().

I refuse to work on the Launcher at this point though so that will be up to someone else to do.

Goober5000

2005-10-13 21:46

administrator   ~0003557

From what I understand of the Launcher, we might be able to code up the error message in FRED and just send it back for the Launcher to display.

taylor

2005-10-14 05:53

administrator   ~0003560

Our binaries aren't a problem, this is strictly a Windows API thing and the Launcher doesn't report those errors. We can't put an error message in FSO or FRED since they aren't even going to run with a missing DLL. CreateProcess() is returing the error so we have to retrieve that error for display and this is all done in the Launcher. Right now the Launcher is only checking if CreateProcess() returned an error or not, it doesn't report what that error was.

When checking for the error message in the Launcher we should be able to check if it's failing because of OpenAL32.dll and if so go ahead and include a download link in the failure dialog, or better yet, open the browser automatically to Creative's website. This can only work 100% from the Launcher though.

Goober5000

2005-10-14 08:51

administrator   ~0003562

Now why did I write FRED there? I meant FSO. :p

I thought applications could run without DLLs, if only in a limited way, because they were linked at run-time? Admittedly I don't know very much about it.

As for the steps required to fix it, that stinks. :( Hopefully RandomTiger will pop back into Mantis from time to time for things like this.

taylor

2005-10-14 09:05

administrator   ~0003563

Last edited: 2005-10-14 09:05

I figured that you meant FSO, though FRED might have a similar issue at some point as well. Shouldn't be a problem when I ever get the chance to finish the runtime load thing though.

You are right, it's linked in at run-time, however this is done before we get to a usable point of the app as far as I know. I'm not totally familiar with how Windows does it so I'm just going with how Linux and OS X handle the same thing. All lib linking and setup is done before main() so if that doesn't go through fine then the app never really starts in the first place.

This isn't at all difficult to handle in the Launcher, it would probably take 10-15 minutes to code and test.

edited on: 10-14-05 05:05

taylor

2006-06-03 18:30

administrator   ~0005740

Hmm, might have to compromise on this one. The GetLastError() mojo, umm, sucked. It gave an error fine but that error was so vague that it's basically useless. There are other ways to get exactly what we need, but that requires unicode support for Windows95/98, and I don't want to make that a requirement if possible.

Right now I'm just making sure that the fs2_open binary itself will report the missing dll. Previously the Launcher was blocking such error messages so the only fix at the moment is just to allow those. Not quite as nice as I would have liked to get it all working, but I guess it will have to do.

To be fixed when I commit it with everything else.

taylor

2006-06-04 00:21

administrator   ~0005754

Fixered.

Well... basically.

Issue History

Date Modified Username Field Change
2005-10-13 18:57 Goober5000 New Issue
2005-10-13 20:52 taylor Note Added: 0003556
2005-10-13 21:46 Goober5000 Note Added: 0003557
2005-10-13 21:46 Goober5000 Assigned To => RandomTiger
2005-10-13 21:46 Goober5000 Status new => assigned
2005-10-14 05:53 taylor Note Added: 0003560
2005-10-14 08:51 Goober5000 Note Added: 0003562
2005-10-14 09:05 taylor Note Added: 0003563
2005-10-14 09:05 taylor Note Edited: 0003563
2006-06-03 08:40 taylor Assigned To RandomTiger => taylor
2006-06-03 08:40 taylor Category user interface => launcher
2006-06-03 18:30 taylor Note Added: 0005740
2006-06-04 00:21 taylor Status assigned => resolved
2006-06-04 00:21 taylor Resolution open => fixed
2006-06-04 00:21 taylor Note Added: 0005754