17.02.2019, 04:02 [+3 UTC]
в нашей команде: 3 393 чел. | участники онлайн: 5 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.69 (10.02.2019)
JS-v.1.33 | CSS-v.3.35

Общие новости:
10.02.2019, 21:59

Форум:
16.02.2019, 15:03

Последний вопрос:
16.02.2019, 13:32
Всего: 148762

Последний ответ:
16.02.2019, 15:37
Всего: 257791

Последняя рассылка:
17.02.2019, 03:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
22.11.2010, 16:45 »
Сергей
Благодарю!! Очень выручили.:)) [вопрос № 180885, ответ № 264250]
13.01.2010, 06:40 »
Arkadiy
Спасибо Евгений за направление в поиске, буду искать [вопрос № 176005, ответ № 258571]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 397
puporev
Статус: Профессионал
Рейтинг: 168
zdwork
Статус: 1-й класс
Рейтинг: 111

Перейти к консультации №:
 

Консультация онлайн # 67530
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Staram
Отправлена: 18.12.2006, 14:46
Поступило ответов: 1

Уважаемые эксперты по Дельфи!
Может кто сталкивался с ситуацией: при выполнении программы в строке помеченной звездочкой(*) происходит ошибка.
Project XXX raised exception class EAccessViolation with message 'Access violation at adress 77C4809E in module 'msvcrt.dll'. Write of ardess YYY'

Если же стоку *ADOSQL.SQL.Append('where X.b=:inPR') заменить на *ADOSQL.SQL.Append('where X.b=1') - все работает без проблем.

Delphi2006, MSSQL2000+SP3, msvcrt.dll(7.0.2600.2180), msado15.dll(2.81.1117.0)

Приложение:

Состояние: Консультация закрыта

Ответ # 132318 от Вадим Исаев ака sir Henry (Мастер-Эксперт)

Здравствуйте, Staram!
Закомментируйте вот эту строчку:
ADOSQL.Parameters.Clear;
Должно заработать.


Консультировал: Вадим Исаев ака sir Henry (Мастер-Эксперт)
Дата отправки: 18.12.2006, 19:18

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 67530
неизвестный

# 1

= общий = | 19.12.2006, 09:57

Здравствуйте, Sir Henry! Вы немного не внимательны: ADOSQL.Parameters.Clear практически никакой смысловой нагрузки не несет. В даннном примере ей и очищать нечего, компонент только создан! Ошибка происходит в момент Append (или Add).

неизвестный

# 2

= общий = | 19.12.2006, 10:34

PS: При использовании Oracle всё работает.

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 3

= общий = | 23.12.2006, 21:32 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Да уж, действительно, невнимателен. smile В таком случае у Вас все равно та же проблема, только с другого бока.В строке: ADOSQL.Parameters.ParamByName('inPR').Value возможно происходит обращение к параметру которого нет в списке. Попробуйте принудительно создать параметр с этим именем и посмотреть, что будет. ADOSQL.Parameters.CreateParameter('inPR', ftInteger, pdInput, 4, 1);

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

неизвестный

# 4

= общий = | 26.12.2006, 12:52

:) *ADOSQL.SQL.Append('where X.b=:inPR'); Ошибка происходит тут. Не ближе, и не дальше. Из самой среды дельфи можно выкрутиться - не использовать параметры, а просто добавлять значение. Но, данные запросы вываливают точно такую же ошибку , например в FastReport - а там уже проблематично проделать все ручками.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 5

= общий = | 26.12.2006, 17:04 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Т.е. создавать параметр вручную Вы категорически отказываетесь?

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

неизвестный

# 6

= общий = | 26.12.2006, 17:24

Ну зачем так категорично? Нет, не отказываюсь - даже пробовал. Но результат все тот же, точнее нет результата.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

неизвестный

# 7

= общий = | 26.12.2006, 17:33

PS: Ошибка происходит раньше чем идет выполнение команды ADOSQL.Parameters.ParamByName('inPR').Value:=1; Т.е. до инициализации парамтре значением дело не доходит. Ошибка в строке *ADOSQL.SQL.Append('where X.b=:inPR');

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 8

= общий = | 26.12.2006, 20:15 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Не питайте ложных иллюзий, что при ошибке "Access violation..." у Вас показывается строка с ошибкой. Подумаю еще. Если что-нибудь придумаю, то напишу Вам.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 9

= общий = | 26.12.2006, 20:19 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Попробуйте на двух разных машинах запустить Вашу программу, будет ли выскакивать эта ошибка.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

неизвестный

# 10

= общий = | 27.12.2006, 09:19

На другой машине пробовал - эффект тот же (единственно не удалось попробовать на другой ОС), все эксперименты делались на WinXP. Даже пробовал на Дельфи 6 и на другой машине - все там же и та же ошибка. Неужели я что-то делаю такое экстраординарное? Неужели никто раньше не бился лбом о подобное?

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 11

= общий = | 27.12.2006, 10:14 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

О подобном глюке я только от Вас первый раз услышал. smile И судя по молчанию других экспертов, они тоже с таким не сталкивались. Здесь видимо проглядывает ошибка взаимодействия OLE DB провайдера с установленной у Вас библиотекой msvcrt.dll (это run-time библиотека для Си\Си++). Попробуйте скачать с сайта Микрософт последнюю версию MDAC и установить ее у себя.

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 12

= общий = | 27.12.2006, 10:17 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Ссылка: http://www.microsoft.com/downloads/details.aspx?familyid=78CAC895-EFC2-4F8E-A9E0-3A1AFBD5922E&displaylang=ru

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

неизвестный

# 13

= общий = | 27.12.2006, 10:40

:) В вопросе я привел версию MDAC (у меня как раз и установлена 2.80sp1). Искал обновления на MDAC2.80sp1 но ничего не нашел подходящего. В этом направлениии я прокопал в первую очередь!!! Т.к. научен "EOleException with message '[Microsoft][Драйвер ODBC dBase] Непредвиденная ошибка драйвера внешней базы данных (15877)'" - которая решилась благодаря сайту Микрософта [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]"BDE"=dword:00000002

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

Вадим Исаев ака sir Henry
Мастер-Эксперт

ID: 425

# 14

= общий = | 27.12.2006, 11:26 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Видимо я неправильно выразился. Не могло ли быть так, что какая-то установка испортила вот эту самую версию MDAC2.80sp1? Может быть стоит еще раз установить этот MDAC?

=====
Я только в одном глубоко убеждён - не надо иметь убеждений! :)

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.16827 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.69 от 10.02.2019
Версия JS: 1.33 | Версия CSS: 3.35