Date: Sun, 25 Apr 1999 11:58:13 +0300 (IDT) From: Eli Zaretskii X-Sender: eliz AT is To: Li Hongwei cc: djgpp AT delorie DOT com Subject: Re: DJGPP programme on Win NT In-Reply-To: <7fpeki$o194@is1.network.fedex.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Fri, 23 Apr 1999, Li Hongwei wrote: > If I call this programe in another application (may be written by Delphi, > may be written by Perl). Everything is fine except the link() and unlink() > can't function properly. The error massage says: Unproper Link ...and the > error code is EXDEV, means trying to move files between different file > systems. More details are required to analyze this problem and suggest solutions. One piece of data that is sorely needed is the names of the files passed by the parent programs to the failing DJGPP program that uses `link' and `unlink', EXACTLY as these library functions get them. (One way of getting this information would be to arrange for the names to be written to a disk file.) One particularly nasty set of problems you might have bumped into is when the files have long names, i.e. if they exceed the DOS 8+3 limits or include characters that are invalid in DOS file names. In general, NT should convert those file names to their 8+3 aliases when it invokes DJGPP programs (and DOS programs in general), but you might be invoking the DJGPP program directly, and so the file-name conversion doesn't happen. DJGPP programs cannot access long file names on NT.