Jump to content

Query the DosError() state: Difference between revisions

From NikiWiki
No edit summary
(No difference)

Revision as of 14:39, 18 October 2004

Found in comp.os.os2.programmer.misc:


SEG:

>>The reason is that there is no way to undo DosError(), since there is
>> no way to query what is the state of error-reporting was when your
>> function is called.


Umm, not well-documented, but a little poking revealed this (won't work in 
Warp 3 or Warp 4 prior to FP13):

APIRET APIENTRY DosSysCtl(ULONG func, ULONG p);

        ULONG SavedDosError = 1;
        DosSysCtl((ULONG)27, (ULONG)&SavedDosError);
        DosError(0L);    //FERR_DISABLEHARDERROR
...
        DosError(SavedDosError);


Hope this helps.