can't run programs from directories > 8 chars

Jeremy Allison jallison at
Thu Jun 25 18:36:56 GMT 1998


I recently added this FAQ to our bug tracking system.

Running 16 bit programs from Windows NT on a Samba mapped drive

The Windows NT redirector has a bug when running against a 
Samba or Windows 95 mapped drive and attempting to run a
16 bit executable.

The problem occurs when the pathname to a 16 bit executable
contains a non 8.3 filename complient directory component,
Windows NT will fail to load the program and complain it
cannot find the path to the program.

It can be verified that this is a bug in Windows NT and
not Samba as the same problem can be reproduced exactly
when attempting to run the same program with the same
pathname from a Windows 95 server (ie. the problem still
exists even with no Samba server involved).

Microsoft have been made aware of this problem, it is
unknown if they regard it as serious enough to provide
a fix for this.

One of the reasons this problem is reported frequently
is that InstallShield setup.exe executables are frequently
written as 16 bit programs, and so hit this problem.

As a workaround, you may create (on a Samba server at
least) a symbolic link with an 8.3 complient name to 
the non 8.3 complient directory name, and then the 16
bit program will run. Alternatively, use the 8.3
complient mangled name to specify the path to run
the binary.

This will be fixed when Samba adds the NT-specific
SMB calls (currently targeted for the next major
Samba release), as once the NT SMB calls are used
this problem no longer occurs (which is why the
problem doesn't occur when running against a drive
mapped to a Windows NT server).


        Jeremy Allison.
        Samba Team.
Buying an operating system without source is like buying
a self-assembly Space Shuttle with no instructions.

More information about the samba mailing list