Thread: Windows 98 and filenames

  1. #1
    int x = *((int *) NULL); Cactus_Hugger's Avatar
    Join Date
    Jul 2003
    Location
    Banks of the River Styx
    Posts
    902

    Windows 98 and filenames

    Ok, this is bugging me now.

    My family owned a network drive (piece of hardware, basically a small linux box that has a shared folder), but the fan went kaput and the drive refused to operate. We dismantled it, backed-up the data, and reassembled it, and sent it off for a new one, with a note saying the data was fine. (Duh, we'd just backed it up...) The company, of course, merely sends back a new one - they didn't transfer a single byte. (Good thing we backed up.)

    The Problem, however, is that we just copied the files. We did this on a Windows PC, moving the data from an ext2fs drive to a NTFS one, and then back again on the new drive. The data itself appears to be fine. But the directory structure seems to have become a little queer since then.

    The drive, to me (the Win98 box), is mounted as a network share on N:\. Skulltag was giving me issues before - the launcher was complaining that the exe didn't exist. (Even though it did.) So I wrote another launcher, stored it in a folder off the root (which has no spaces and is <8 characters) and pointed the first launcher to that laucher with then launched Skulltag. (A kludge if the world has ever seen one.) Problem "fixed".

    Now, I start MySQL for the first time in decades. (Ok, since the drive failed.) It doesn't start, giving a "Can't find messagefile 'N:\Program Files\MySQL\share\english\errmsg.sys', aborting." message. If I directly copy/paste the filename into Textpad/Notepad/etc, it open right up. I uninstalled MySQL (it was version 4.0) and upgraded to v5.0 in the hope that it would be fixed. I hoped in vain.

    Here's the questions: Any guesses on what sort of bad mojo these programs are performing on the filenames? Also, I suspect either long->short filename conversion or long filenames (or filenames with spaces) (or all of the above): Where does Windows store the short filenames? (There seem to be no special files in N:\ or N:\Program Files) Any ideas how to fix?

    Sorry for the long explanation, thanks in advance for any help.
    EDIT: And if you're wondering why I store programs on a network drive: It workes fairly well (up until now) and C:\ has <8GB. N:\ has >150GB.
    long time; /* know C? */
    Unprecedented performance: Nothing ever ran this slow before.
    Any sufficiently advanced bug is indistinguishable from a feature.
    Real Programmers confuse Halloween and Christmas, because dec 25 == oct 31.
    The best way to accelerate an IBM is at 9.8 m/s/s.
    recursion (re - cur' - zhun) n. 1. (see recursion)

  2. #2
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,663
    The command of the day is
    dir /x

    One problem I can think of if you're relying on short names in some way is that if you copy long names to a new volume, the equivalent short name can change.

    For names which need contracting, you end up with xxxxxx~n type names, but the ~n is a rather dynamic thing in that n increments with every new short name generated.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  3. #3
    int x = *((int *) NULL); Cactus_Hugger's Avatar
    Join Date
    Jul 2003
    Location
    Banks of the River Styx
    Posts
    902
    dir /x gives "Invalid switch" on my PC. Could be due to Win98. (Googled it. Win98, AFAIK, always shows short file names.)

    I'm not sure anymore if short filenames are the problem - MySQL's ini file has the full pathname. I'm still curious as to where Windows keeps these filenames. Generally, yes, it's xxxxxx~n, but this drive has always had odd ones. Program Files is "PROGR~-I", Mozilla Firefox is "MOZIL~6H".
    long time; /* know C? */
    Unprecedented performance: Nothing ever ran this slow before.
    Any sufficiently advanced bug is indistinguishable from a feature.
    Real Programmers confuse Halloween and Christmas, because dec 25 == oct 31.
    The best way to accelerate an IBM is at 9.8 m/s/s.
    recursion (re - cur' - zhun) n. 1. (see recursion)

Popular pages Recent additions subscribe to a feed