Наше приложение FoxPro для DOS 2.6 (FPD), по-видимому, не может видеть имена файлов длиной более 8 символов при запуске на станциях Windows XP Pro или Win 7 (32-разрядных) поверх Small Business Server 2011, работающего на базовой платформе SBS 2008, оба 64-битный. Ранее мы успешно тестировали приложение FPD на 64-битной SBS 2008. Наши ИТ-специалисты по Op Sys / Server говорят, что размещение SBS 2011 между ними не должно иметь никакого значения.
Поскольку программное обеспечение Windows было обновлено вокруг приложения FPD (и оно перешло от DOS), мы столкнулись с аналогичными проблемами со ссылками на имена файлов, когда нам нужно было взять длинные папки и имена файлов, такие как «Мои документы», и показать их как «MyDocu ~ 1 ". В то время Cmd (командное окно Windows, подобное DOS) также распознает эту сокращенную ссылку. Но теперь Cmd распознает только полные длинные имена. Если вы откроете диалоговое окно «Открыть файл» в Fox, будут отображаться только файлы / папки с короткими (8-значными) именами. Попытка открыть файл с длинным именем приведет к ошибке «Не найдено».
Кто-нибудь может сказать, почему наш исходный 64-битный тест показал разные результаты и что было бы проще всего исправить?
fsutil 8dot3name set 0
позволит создавать короткие имена файлов на всех томах. Вам потребуется перезагрузка после того, как эта команда будет запущена из командной строки с повышенными привилегиями. Эта статья в технике описывает, что он меняется за кулисами и какие другие варианты доступны.
По умолчанию более новые версии Windows, в том числе SBS2011, не поставляются с включенным созданием имени файла 8.3.
Запомните этот фрагмент из этой статьи:
Изменение этого значения не меняет файл, но меняет способ, которым NTFS отображает файл и управляет им. Кроме того, файлы получают имена в соответствии с любым правилом, указанным в этой записи во время их создания; изменение этой записи не меняет имена существующих файлов.
Вам нужно будет воссоздать все файлы, к которым ваше приложение FPD должно будет получить доступ. Копировать и вставить, вероятно, должно быть достаточно.