pcb@usl.usl.edu (P.C. Bahrs) (08/18/88)
Given the following code fragments: #define INITIAL_SIZE 4000 #define NEWSIZE 8000 GLOBALHANDLE *hData [10]; float FAR *lpfDATA [10]; if (NULL == (hData [X] = GlobalAlloc (GHND, (DWORD) INITIAL_SIZE))) return FALSE; .... if (NULL == (hTemp = GlobalRealloc (hData [X], (DWORD) NEW_SIZE, GHND))) return FALSE; .... if (NULL != GlobalFree ((GLOBALHANDLE) hData [X])) return FALSE; .... if ((NULL == (lpfDATA[X] = (float FAR *) GlobalLock ((GLOBALHANDLE) hData [X]))) return FALSE; ... GlobalUnlock ((GLOBALHANDLE) hData [X]); ... The system works great if code segments are all MOVEABLE, but if the code segments are marked as MOVEABLE DISCARDABLE and some data has been loaded into the system AND HeapWalk is run to allocate all of memory... the infamouse DEV AUX error appears! This error does not appear if the data is not loaded (i.e. the User Interface seems robust). Does anyone have any comments? Also, is there a way to bypass or trap the DEV AUX error? (which causes the user to warm boot!) Reply on News or : pcb@usl.usl.edu csnet
bturner@hpcvlx.HP.COM (Bill Turner) (08/23/88)
"Cannot Write to Device AUX" is generated when a fatal exit occurs and you have the debugging kernel of Windows installed (at least, I haven't seen it with the non-debugging kernel...). It means that debugging information is being dumped to COM1: but there is nothing there to receive it. As far as I know, there's no way to get around it (check if you have the debugging kernel installed somehow...). If you're doing development, then I strongly suggest connecting a terminal to COM1, 'cause you're gonna need it for debugging! --Bill Turner