@Richard Davey:
I'm not sure if this will help or even applies (Windows 98), but I noticed that when I use DarkEdit, and I open another windows application (especially internet explorer), whenever I run the DBC script and then return to windows, a "fake" application exists on the taskbar without a name. If I click on it, it will disappear - but something is happening that is causing that resource to be triggered.
I noticed a similar thing happening when I used the WIN API to create a menu in a DBC window. Depending on how I use GetMessageA and DispatchMessageA, a new hwnd is returned in struct MSG every time I click on a menu item.
typedef struct {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG, *PMSG;
One other thing to maybe consider would be any of the DBC ini settings. Maybe one of those is causing some trouble? The
ExternalEditor perhaps? Or maybe even the
winsizex and
winsizey. Maybe they are resetting all of your other windows inadvertently.
[SETTINGS]
TextLanguage=English
TextLanguage-Charset=1
HelpLanguage=English
HelpLanguage-Charset=1
HelpFontSize=0
ExternalEditor=None
blitflipmode=1
vbcreate=0
vbusage=0
3doverlay=0
runtimetest=1
tracemode=0
windowmode=0
popupoff=0
; Test and Trace Settings
; ----------------
; runtimetest: 0=simple error reporting / 1=advanced error reporting
; tracemode: 0=no trace information / 1=produce trace files
; Compatabilitiy Settings
; ----------------
; windowmode: 0=no window / 1=run in window
; blitoverdraw : 0=normal / 1=Draw All 2D twice
; blitflipmode : 0=double videomem flip / 1=blit to video memory
; runtimetest : 0=no extra error data / 1=produce extra error data
; vbcreate : 0=normal / 1=WriteOnly / 2=No Clip / 3=[1]+[2] / 4=SystemMem
; vbusage : 0=normal / 1=Wait / 2=WriteOnly and Wait / 3=SurfaceMem and Wait
; 3doverlay : 0=normal / 1=Utilize ZBuffer Clear for overlapped 3D rendering
; StartUp Settings
; ----------------
; Use a SETUP.INI file with the [STARTUP] keys below to
; control the initial state of your application:-
; eg. window=1 will start your app in a window
[STARTUP]
window=0
winposx=0
winposy=0
winsizex=640
winsizey=480
Enjoy your day.