Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

Здесь есть возможность читать онлайн «Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Советы по Delphi. Версия 1.4.3 от 1.1.2001: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Советы по Delphi. Версия 1.4.3 от 1.1.2001»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

…начиная с 1001. Смотрите другие файлы…

Советы по Delphi. Версия 1.4.3 от 1.1.2001 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Советы по Delphi. Версия 1.4.3 от 1.1.2001», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Почему при создании таблицы Paradox с первичным нечувствительным к регистру индексом вываливается ошибка?

Пара строк

Nomadicотвечает:

В Парадоксе первичный индекс всегда CaseSensitive.

Как сменить пароль (master password) для таблицы Paradox?

Nomadicотвечает:

Пожалуйста:

var

db : TDatabase;

Desc : CRTblDesc;

begin

db := PriceTable.OpenDatabase;

FillChar(Desc, SizeOf(Desc), #0 );

StrCopy(Desc.szTblName, PChar(PriceTable.TableName));

StrCopy(Desc.szTblType, szParadox);

StrCopy(Desc.szPassword, 'password');

Desc.bProtected := TRUE;

Check(DbiDoRestructure(db.Handle, 1, @Desc, nil, nil, nil, FALSE));

end;

Что нужно сделать для нормальной работы в одноранговой сети с базами Paradox?

Nomadicотвечает:

BDE Config/Admin – нa вкладке System устaнови LOCAL SHARE в TRUE!

Здесь комментарий –

В Help параметр LOCAL SHARE описан как:

AA> === Cut ===

AA> The ability to share access to local data between an active BDE

AA> application and an active non-BDE application. Set to TRUE if you need to

AA> work with the same files through both a BDE and a non-BDE application at

AA> the same time. (It is not necessary to set LOCAL SHARE to TRUE if you do

AA> not need to have both applications open at the same time.) Default: FALSE.

AA> === Cut ===

Дак читал я вышеизложенное, и расцениваю его кaк туманопускательство. А подозреваю, что просто у BDE для скорости есть свой внутренний кэш (или, может, мехaнизм блокировок в пaмяти), и для двух приложений на одном компьютереоно всё делает хорошо, a вот если приложение находится на другом компьютере (и лезет в БД через другую копию BDE), то у него есть доступ только к файлам нa диске (как и у non-BDE application).

Скорее всего, борланд отключает эти хитрости у сетевых дисков. Hо для локальногодискa, который рaсшарен по сети, он этого, похоже, не сделaл :(

И BDE нa файл-сервере не заботится о правильных индексaх и блокировках нa диске (т.е. не ожидает, что кто-то мог исправить индекс, пока оно ворон считaло).

А этa установка заставляетего работать по старым парадоховым соглашениям.

Что и требовалось.

PS. Иначе говоря, следует считать, что network is non-BDE application, и тогда это не есть бага :)

Переиндексирование файлов Paradox в пределах моей программы

Delphi 1

Попытаемся это сделать с помощью прямых вызовов функций BDE. На некоторых Интернет-серверах я видел описание этих функций. Некоторые «писатели» даже превращают свои трактаты в некое подобие файлов помощи. Поскольку я не хочу перегружать канал, то пошлю это по почте тому, кто пришлет мне запрос (т.е. кому это действительно нужно).

…сейчая я пишу небольшое приложение, которое может оказаться полезным для восстановления «разбитых» таблиц. Аллен, я пошлю тебе полный список шагов, как только смогу перевести их (это писал итальянец, я же только перевожу это), но уже сейчас я могу сказать как это проблему я решил для себя. Один из наших клиентов всегда разбивал таблицы paradox, поскольку они у него всегда были очень большими (в Blob-полях хранились WAV-файлы – оцифрованный голос). Решение заключалось в создании маленьких таблиц, включенных в отношение справочной целостности, и загрузки больших blob-полей в эти отдельные таблицы. Ненужно никаких BDE функций, единственное условие – вы не должны вручную удалять индексные файлы (все .x00, .y01 и т.д., они все имеют маску .x?? и .y??, не трогайте других файлов!), в противном случае вы НЕ СМОЖЕТЕ ОТКРЫТЬ ТАБЛИЦУ, даже с помощью DBD!

…затем я вручную восстанавливал все индексы (затем я что-то забыл, и приложение вылетело с ошибкой…). Если приложение, которое я тебе пришлю, не заработает, я думаю единственным решением будет физическое уничтожение индексов и пересоздание их с помощью соответствующих вызовов BDE.

Разное

Помещение Memo-файла с ASCII-разделителем в Memo-поле таблицы

Вам нужно использовать процедуру getTextBuf. Вот пример из электронной справки:

Данный пример при нажатии пользователем на кнопку копирует текст из поля редактирования в строку с терминирующим нулем, и помещает эту строку в другое поле редактирования.

procedureTForm1.Button1Click(Sender: TObject);

var

Buffer: PChar;

Size: Byte;

begin

Size := Edit1.GetTextLen; {Получаем длину строки в Edit1}

Inc(Size); {Добавляем место для терминирующего нуля}

GetMem(Buffer, Size); {Создаем динамическую переменную Buffer}

Edit1.GetTextBuf(Buffer,Size); {Помещаем Edit1.Text в Buffer}

Edit2.Text := StrPas(Buffer); {Преобразуем Buffer в строку паскалевского типа}

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Представляем Вашему вниманию похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Обсуждение, отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x