Jump to content

Networked Symbolic Links on Windows XP, DOS Append, or something else


Sfor

Recommended Posts

Well. My investigation shows the Symbolic Links with ability to link through networked systems were added in Windows Vista. Also, it looks like there is a file system filter driver able to add such a feature to Windows XP.

 

I'm trying to speed up network application booting by moving executables to local HDD. To do that I need to copy a directory of the application from the server to local HDD with an exception of a few data files. Some data files are accessed within the same folder the EXE file was run from. So, in order to make this idea a reality it is necesary to make symbolic links on workstations, so the application will seek the databases on local HDD, but the data will be kept on the server.

 

- the hard links within a single NTFS partition will not solve the problem

 

- the directory junction feature will not do the trick

 

- the symbolic links from Windows Vista (and newer) should be able to solve the problem

 

- perhaps there is some other solution I'm not aware of. For an example there was an APPEND command in the DOS. In any case the Path enviroment string does not do the trick.

Link to comment
Share on other sites


Well. My investigation shows the Symbolic Links with ability to link through networked systems were added in Windows Vista. Also, it looks like there is a file system filter driver able to add such a feature to Windows XP.

... which you carefully avoid to reference but that probably are the ones referenced here:

http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html

 

I'm trying to speed up network application booting by moving executables to local HDD. To do that I need to copy a directory of the application from the server to local HDD with an exception of a few data files. Some data files are accessed within the same folder the EXE file was run from. So, in order to make this idea a reality it is necesary to make symbolic links on workstations, so the application will seek the databases on local HDD, but the data will be kept on the server.

 

- the hard links within a single NTFS partition will not solve the problem

 

- the directory junction feature will not do the trick

 

- the symbolic links from Windows Vista (and newer) should be able to solve the problem

 

- perhaps there is some other solution I'm not aware of. For an example there was an APPEND command in the DOS. In any case the Path enviroment string does not do the trick.

The "generic" solution as you found out is most probably the Symbolic Links, most probably (depending on the specific application) there are alternate solutions, but I doubt there can be other "generic" ones.

jaclaz

Link to comment
Share on other sites

You are right. I did use the Link Shell Extension and the driver mentioned there. There are many pages related to this topic and many of them are not quite precise.

 

What I found so far:

 

- The symbolic links are working in general. The only requirement is the driver and NTFS partition. However it is possible to link to files on a server without driver and without NTFS, as well. For an example I did link to a Windows 2000 share set on FAT32 partition.

 

- the application I'm toying with accepts the symbolic link for one of the files. The file is accessed correctly, as far as I can see. However two other data files are as good as missing. It could be related somehow to the file open procedure. The problematic files are opening correctly in Explorer, but the application does not seem to be able to open them. However, everything works fine, if the symbolic links are pointing to the files located on the same system (other partition). So, the symbolic links to networked shares do not work as intended in some cases.

Link to comment
Share on other sites

- The symbolic links are working in general. The only requirement is the driver and NTFS partition. However it is possible to link to files on a server without driver and without NTFS, as well. For an example I did link to a Windows 2000 share set on FAT32 partition.

I am not sure to follow you, the requisite AFAICU is the driver and a local NTFS (if you prefere this is these are the requisites to create locally a link or "mountpoint"), the "source" doesn't need the driver, and as long as the file is accessible can be *any * filesystem, is this what you are saying?

However, everything works fine, if the symbolic links are pointing to the files located on the same system (other partition). So, the symbolic links to networked shares do not work as intended in some cases.

"same system, other partition" actually means "same disk device, different volume", it is very possible that they also fail to work if "same local system BUT other disk device" :unsure:

But it is very possible that the specific program has it's own ways to access a file flatly bypassing the driver or using a Windows function that the driver does not "hook". :(

jaclaz

Link to comment
Share on other sites

Well, it works correctly, now. The reason is simple. The files on the server had read only attribute set, while the local copies did not. That's why the symbolic links were working differently, depending on where they were pointing to.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...