View previous topic :: View next topic |
Author |
Message |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Thu Apr 22, 2010 5:39 am Post subject: |
|
|
ok i fixed as much as possible in the source except for a function no longer provided by mfc namely InvertSysMenu();
i can compile it but it dies instantly it seems fun thing first time i started it it bitched about a missing pak file hmm ? |
|
Back to top |
|
 |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Thu Apr 22, 2010 6:35 am Post subject: |
|
|
ah ok took the pak from the official build and i can start it but its a bit wonky executing qoole99.exe itself does absolutly nothing i need to drag the pakfile on it i suspect theres some needed registry entries to be done.
if i replace the official one with mine it works allthough it crashed when trying to save
if you want i can upload the fixed source code ? |
|
Back to top |
|
 |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Thu Apr 22, 2010 7:53 am Post subject: |
|
|
ouch well most of the problems seem to originate from it using an ancient version of mfc.
to be blunt the exception handling uses something like a sigtrap system (unixy at its best) instead of try[] catch[] also the code does no cleanup so newer mfc dlls get quite pissy about it
it compiles now but its far from stable i left the fixed source on my ftp under the name Qoole99.7z |
|
Back to top |
|
 |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Thu Apr 22, 2010 2:44 pm Post subject: |
|
|
Code: | class LConfig {
public:
LConfig(char *name);
~LConfig(void);
void RegisterVar(char *name, void *ptr, int type);
void SaveVars(void);
static void Init(int curVer, int reqVer);
static void Exit(void);
private:
// heres where most of the problems begin ...
static struct LVar {
char name[32];
void *ptr;
int type;
};
char sectionName[32];
int numLVars;
LVar *lvars[256];
static int currentVer, requiredVer, registryVer;
}; |
main bad guy of it all.
the LVar struct goes bonkers on us interresting thing is i can actually use a union instead and then it starts no problem but saving crashes us with the struct it newer starts and if i hook it into the debugger it tells me that LVar->whatever is a bad pointer |
|
Back to top |
|
 |
frag.machine

Joined: 25 Nov 2006 Posts: 728
|
Posted: Thu Apr 22, 2010 4:40 pm Post subject: |
|
|
Sounds like a change in runtime behavior between versions to me. Have you already searched in MSDN for this ? _________________ frag.machine - Q2K4 Project
http://fragmachine.quakedev.com/ |
|
Back to top |
|
 |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Fri Apr 23, 2010 1:23 am Post subject: |
|
|
according to msn old mfc code except a few bits and pieces like InvertSysMenu () (now handled by os files) etc should work if compiled with managed extensions.
tried compiling the code with msvc6 and works there even with those codeparts removed. NET doesnt like it at all  |
|
Back to top |
|
 |
reckless
Joined: 24 Jan 2008 Posts: 390 Location: inside tha debugger
|
Posted: Fri Apr 23, 2010 7:04 am Post subject: |
|
|
something to maybe consider ?
porting it to wxwidgets (most of the mfc calls can be done with it allready just need to prefix the mfc calls with wx)
my ide has quite a nice wx editor builtin (think borlands delphi style)
would be compatible with other compilers. |
|
Back to top |
|
 |
|