Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Вниз

Открыть .dbf без индекса   Найти похожие ветки 

 
Игорь Писанко   (2004-11-18 16:36) [0]

Требуется открыть базу .DBF но делфи выдает Invalid index descriptor. Как открыть базу и создать новый индексный фаил.Спасибо за пример.


 
SergP.   (2004-11-18 19:35) [1]

Открой dbf в фоксе (при этом индексного файла не должно быть в этой же папке). Фокс матюкнется на тебя. выберешь ignore и закроешь фокс.

Либо вручную исправь в dbf нужный байт в заголовке (только вот я не помню точно какой). Поищи сам...Поисковики есть..


 
Anatoly Podgoretsky ©   (2004-11-18 19:47) [2]

А зачем фокспро, что родных инструментов недостаточно или программным путем.


 
SergP ©   (2004-11-18 20:18) [3]

ну я так привык. Мне фокспро удобнее родных инструментов...:-))


 
Anatoly Podgoretsky ©   (2004-11-18 20:41) [4]

А что делать тем, кто этот фокспро и в глаза не видал, а Дельфи есть.


 
SergP ©   (2004-11-18 21:02) [5]

Хорошо. Тогда так:

Вот нашел описание заголовка:

+----------------------------------------------------------+
¦         Запись заголовка в файле с данными               ¦
¦----------------------------------------------------------¦
¦ Байты ¦              Описание                            ¦
¦-------+--------------------------------------------------¦
¦ 00    ¦Типы файлов с данными:                            ¦
¦       ¦ FoxBASE+/dBASE III +, без memo - 0х03            ¦
¦       ¦ FoxBASE+/dBASE III +, с memo   - 0х83            ¦
¦       ¦ FoxPro/dBASE IV,      без memo - 0х03            ¦
¦       ¦ FoxPro                с memo   - 0хF5            ¦
¦       ¦ dBASE IV              с memo   - 0x8B            ¦
¦-------+--------------------------------------------------¦
¦ 01-03 ¦Последнее изменение (ГГММДД)                      ¦
¦-------+--------------------------------------------------¦
¦ 04-07 ¦Число записей в файле                             ¦
¦-------+--------------------------------------------------¦
¦ 08-09 ¦Положение первой записи с данными                 ¦
¦-------+--------------------------------------------------¦
¦ 10-11 ¦Длина одной записи с данными (включая признак     ¦
¦       ¦удаления)                                         ¦
¦-------+--------------------------------------------------¦
¦ 12-27 ¦Зарезервированы                                   ¦
¦-------+--------------------------------------------------¦
¦ 28    ¦1-есть структ.составной инд.файл (типа .CDX),0-нет¦
¦-------+--------------------------------------------------¦
¦ 29-31 ¦Зарезервированы                                   ¦
¦-------+--------------------------------------------------¦
¦ 32-n  ¦Подзаписи полей**                                 ¦
¦-------+--------------------------------------------------¦
¦  n+1  ¦Признак завершения записи заголовка (0х01)        ¦
+----------------------------------------------------------+


Можно любыми другими средствами исправить  28-й байт (т.е. открыть любым hexedit"ором и исправить байт со смещением $0001С c 01 на 00)


 
Anatoly Podgoretsky ©   (2004-11-18 21:07) [6]

Ну тебя вообще потянуло на закерские хлеба.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.039 c
1-1101850354
Mega
2004-12-01 00:32
2004.12.19
Обмен сообщениями между MDIParent и MDIChild


1-1102307317
Ivvvan
2004-12-06 07:28
2004.12.19
Интеграция c Outlook Express


1-1101970017
Adis Tadas
2004-12-02 09:46
2004.12.19
Можно ли вернуть из DLL record?


4-1098960284
MetalFan
2004-10-28 14:44
2004.12.19
Узнать данные по сессии CD


3-1101128394
slaga
2004-11-22 15:59
2004.12.19
Как создать процедуру в ИБ "на лету"?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский