in reply to Win98 strangeness

Doing
system("ipconfig > test.txt") && fatal("System call failed"); open(IPCONFIG,"test.txt") || fatal("Ordinary open failed");

doesn't seem to suffer from the problem (at the time of writing it has opened without failing more than 512 times)

It's ugly but it works!