C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
BDE / DBASE, НЕ меняется langdriver
VMarch
Отправлено: 17.12.2003, 13:46


Не зарегистрирован







Здравствуйте, Уважаемые Гуру wink.gif !
Задача такая: определить текущий LANGDRIVER для DBASE, если он
"LANGDRIVER=dBASE RUS cp866", то поменять его на время выполнения программы на ансишный, потом "вернуть взад..."

Код следующий:
/****************************************************/
/*Сhecked LANGDRIVER==dBASE RUS cp866*/
/*...*/
TStringList *MyStringList = new TStringList;
MyStringList->Clear();

MyStringList->Add("LANGDRIVER='ascii' ANSI");

Session->ModifyDriver("DBASE", MyStringList);
Session->SaveConfigFile();
Session->Close();
Session->Close();


/*****************************************************/
Фиг отрабатывает, зараза. Думаю ,ладно, типа "All BDE Applications must be restart", выгоняю код в другую прогу (дабы меняла лангдрайвер, и выключалась). Эффект тот же.
При этом в БДЕ Админе корректно отображаются изменения. НО вступают в силу ТОЛЬКО когда ручками поменяшь, потом обратно и нажмёшь "Apply"...


Вернуться в Работа с базами данных в C++Builder