[This is a rather late followup - I'm catching up on personal email -
but may still be of interest.]
Stephen Harris wrote:
Regarding the C:\Aspell limitation to portability, perhaps the
dos subst or label command would serve as a workaround. Suppose
your USB drive was "J", then
label J: C:
I think would change J:\Aspell into C:\Aspell
Er, no. The label command writes the "volume label", a special
filesystem entry that serves as a "label" for a disk. It has nothing to
do with path substitutions.
The converse of the subst command was the join command, in MS-DOS. It's
not present in the 9x or NT Windows families.
if not perhaps the subst command would suffice called from J:
Subst creates a virtual drive that's mapped to a path on an existing
filesystem. It won't help in this case, where we want a virtual path
(c:\aspell) created that's mapped to an existing path.
join would, in theory, do the job, if it were still included with the
OS, and if you had aspell installed in the root of the destination
drive. (It would have to be the root, because join did not let you map
an arbitrary destination path, just a destination drive.)
What you need, in NT-family Windows, is a reparse point at c:\aspell
which redirects to your aspell installation. The base OS includes the
mountvol command, which will create a reparse point, but like join (or
classic Unix mount, ignoring goofy newcomers like the loopback
filesystem) it only lets you associate an entire volume (and not some
path on that volume) with the destination.
On the other hand, the Windows 2000 Resource Kit (which I think is a
free download from Microsoft these days) includes the spiffy linkd
command, which will create reparse-point mounts from any source path to
any destination path. With it you can do, for example:
linkd c:\aspell j:\aspell
Note, though, that this requires that c:\aspell not already exist, and
that you have appropriate permissions for c:\. It appears to require
only the "Create Folders" authority, but if you're logged in as J Random
User on a typical XP box, I suspect you won't have that authority for
c:\. And that, of course, is as it should be; ordinary users shouldn't
be able to create directories, real or virtual, in the root of the boot
drive (assuming c: is the boot drive).
--
Michael Wojcik