1. Re: DOS LFN support

jbrown105 wrote:

> On  0, Robert Craig <rds at RapidEuphoria.com> wrote:
>> Juergen Luethje writes:

<snip>
>>> Together with J.Brown, I began to work at a cross-platform library for
>>> directory and file operations some time ago. Unfortunately, it doesn't
>>> make much progress at the moment, because I have little time, but it
>>> shouldn't be too much work to extract the functions related to long
>>> filenames, and rearrange them somewhat.
>
> Uhh ... didnt dos.e already do this?

I would appreciate it very much, if in *all* Euphoria routines that deal
with filenames, ex.exe uses long filenames, if they are supported by the
OS. The code needed for this purpose is *not* contained in dos.e.
Most of the code in dos.e add new functions to Euphoria (like mkdir(),
rmdir(), copy(), ...) rather than improving existing functions.

(I assume Rob knows dos.e well. If dos.e would solve the problem, Rob
would already have moved it's code into the interpreter, I suppose.)

And dos.e is buggy. Just an example: When a DOS program deals with long
filenames, the most basic thing is to detect, wether the OS on which the
program currently is running, does support long filenames or doesn't do
so. Do detect this, dos.e uses "surrogate markers", which are not too
reliable. Using this method, a program wouldn't have long filename
support on Win XP.  sad
To look wether LFN are supported by the OS, my code calls the appropriate
DOS interrupt function instead, which is much more reliable.

> In fact, Juergen, didnt you get most of the dos code FROM dos.e?

No. When I saw some bugs in dos.e, I reported them to this list. Then
Derek wrote something like: "Interesting, but who uses DOS nowadays?".
That was how I got the idea, not just to correct dos.e, but to create a
cross-platform library for file and directory operations. You know that,
of course.
So the first thing I got from dos.e -- and from Derek smile -- was a
(hopefully) good idea. Then I got more ideas from dos.e, but I already
had detected, that the code wasn't reliable. I found a very good
documentation on the net about DOS and LFN [1]. But mainly I used Ralph
Brown's interrupt list, what to the best of my knowledge is the "gold
standard" is this field.
(There are situations, were I like "wearing a belt *and* braces" smile

> Not to say that our lib isn't useful (personally I think it should be
> part of the standard includes,

I also think so. Well, we'll cross that bridge when we come to it. smile

> but then again thats just my opinion) but that wouldnt it be easier
> to get dos.e from the archives than to extract the DOS-only code from
> file2.e? (I wouldn't know, I've mostly done the Unix-only part of the
> programming on it.)

I'm already finished extracting the DOS code related to long filenames
from file2.e. I also made some tests on my neighbour's PC (Win 2000).

> About file2.e: I'm working on some more Linux improvements, I'll give
> Juergen a copy in a few days perhaps.
<snip>

You're welcome! Just please be patient with me, because my lack of time.

> jbrown

Regards,
   Juergen

--------
[1] http://lab1.de/prod/lfn/lfn.htm  (sorry, it's in German only)

new topic     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu