Windows NTFS supports
Junctions
which are very similar to Unix symlinks (see also Sysinternals Junction).
I've successfully used the CPAN Win32::Symlink module by audreyt (in particular, it's symlink function)
to write cross-platform code that used "symlinks" on both Unix and Windows.
At the top of the program, I used:
BEGIN {
if ($^O eq 'MSWin32')
{
require Win32::Symlink;
Win32::Symlink->import();
}
}
The rest of the code (using the symlink function)
was the same for both platforms.
Update: Re^5: How to create symlink using Perl? advises using Win32::Symlink for directories only, not files (because Windows junctions are for directories only)