Re: Rob craig
- Posted by "Carl R. White" <C.R.White at SCM.BRAD.AC.UK> Mar 09, 1999
- 424 views
On Mon, 8 Mar 1999, Robert Craig wrote: ] Just change the line in DOSWRAP.E in ] DosOpen() that reads: ] ] if DosVersion < 7 then ] to: ] if DosVersion < 7 or atom(getenv("windir")) then ] ] The extra "windir" part lets the code detect that although it's ] running in DOS 7, it is not running under Windows, ] therefore long filenames aren't supported. ] (Maybe someone knows an easy, 100% fool-proof, ] way of detecting this.) Just guessing on the fly again: constant LFNx = "$_$$longfilenametest.abcd" function LFNactive() sequence d integer fh fh = open(LFNx, "w") puts(fh, "test\n") close(fh) d = dir(LFNx[1..4]&"*.*") system("del "&LFNx[1..4]&"*.*",2) return (length(LFN) = length(d[D_NAME])) end function Incidentally, since Win9x has access to the parts of the disk where LFNs are stored, surely someone could write a TSR (not Windows :) ) that could access them? Or is there some kind of Micro$oft conspiracy that detects and stops this (like the deliberate detection of Windows 3.xx under DOS 7.xx and not letting it run under *any* circumstances)? -- Carl R White -- Final Year Computer Science at the University of Bradford E-mail........: cyrek- at -bigfoot.com -- Remove hyphens. Ta :) URL...........: http://www.bigfoot.com/~cyrek/ Uncrackable...: "19.6A.23.38.52.73.45 25.31.1C 3C.53.44.39.58"