TClientDataSet сбой с сообщением
Здесь возникла небольшая ситуация, я до недавнего времени не использовал TClientDataSet (для этого требуется midas.dll), поэтому сейчас я сталкиваюсь с очень неловкой ошибкой, не очень описательной:
Уведомление об ошибках отладчика
Проект E:\Work\XXX\binary\XXX.exe завершился ошибкой с сообщением: "нарушение прав доступа по адресу 0x00678827: запись адреса 0x00030a38". Процесс остановлен. Используйте Step или Run, чтобы продолжить.
это происходит всякий раз, когда я пытаюсь установить значение поля в наборе данных клиента (я использую его как набор данных в памяти) следующим образом:
with ADataModule do begin
cdsTest.Append;
cdsTestAField.AsString := ATableField.AsString;
// ...
end;
оба поля являются TStringField, cdsTestAField имеет размер 64, а ATableField имеет размер 32
Обратите внимание: что я вызываю метод CreateDataSet раньше всего, также это происходит только со строковыми полями, любая помощь будет принята с благодарностью.
Спасибо за ваше время.
1 ответ
И откуда берется ATableField? Может быть, это недействительная ссылка на объект, который уже освобожден?
Кроме того, вы можете включить midaslib.pas в ваш проект, чтобы исключить использование внешнего midaslib.dll. Это сделает ваш проект немного больше, хотя, потому что вы в основном компилируете dll в вашем exe.