The problem was that the base directory was extracted without the drive letter, so it was treated as relative to the current working directory's drive. If the user changed the working directory to a different drive, then the logolib procedure would be loaded with the correct path on the wrong drive and fail.