delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/10/27/04:13:24

Date: Mon, 27 Oct 1997 11:11:15 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: Nate Eldredge <eldredge AT ap DOT net>
cc: djgpp AT delorie DOT com
Subject: Re: DJGPP and Windows NT
In-Reply-To: <199710261934.LAA07487@adit.ap.net>
Message-ID: <Pine.SUN.3.91.971027111043.19645B-100000@is>
MIME-Version: 1.0

On Sun, 26 Oct 1997, Nate Eldredge wrote:

> Just wondering: How does a native NT program find out about long
> file names?

Simple: it uses native Win32 API calls for file-oriented functions.
I'd guess that the DOS calls go through some intermediate thunking
level before the boil down to the same Win32 kernel function, and
that intermediate level truncates the file names to emulate DOS.

> Would it be possible to use the same method? This might be a stupid
> question

No, that's the $64,000-question, Nate!  How would a DOS program go
about calling Win32 API functions?  If and when we know that, we are
almost done.

Right now, the only way I see is to write an interface library which
redirects the usual POSIX functions to Win32 functions, and link with
RSXNTDJ.  But that means you need to have separate executables for NT.

The Interrupt List has a lot of documentation on calling Windows VxDs
from a DOS program.  Since the file-oriented functions are probably
implemented in one or more of the VxDs, this might be the beginning.
But much more reverse engineering is required to actually do it (those
parts of the Interrupt List are very incomplete right now).

It is also possible that there is no reasonable way to achieve that
feat at all.  Windows 95 already disallows certain calls from certain
levels (e.g., Win32 applications cannot use the VDS services, only
Win16 apps can).

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019