| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Indy9 IdMessage |
| Автор: 3315720 12.5.2009, 12:50 |
| Всем привет. Растолкуйте, в чём может быть проблема? Было приложение, всё работало. Решил обновить инди компоненты. Были поставляемые с bcb6, установил инди9. После этого майл клиент перестал проявлять какую-либо сетевую активность. ошибок компилятор не выдаёт. Причём тот же код переписанный в другом месте, работает исправно. А вот IdMessage стал вообще неадекватен. поля From, Sender, Recepients. Равны NULL, и следовательно любое обращение к ним, есть конец света. скачал и хелп и демы (правда они на дельфи) но ничего особенного не обнаружил. попробовал создать их оператором new, но тогда delete бесится... пока писал, подумал может 'make' или 'build all' поможет. У кого есть соображения? Решение такое. Переустановить Indy. |
| Автор: Alca 12.5.2009, 14:25 |
| Ты хотя бы код показал для начала. Добавлено через 50 секунд 10-ю версию индейцев пробывал? |
| Автор: 3315720 12.5.2009, 15:06 | ||
10-ю не пробовал. она ещё в разработке, говорят глючная. а что код..? классический. msg = new IdMessage(this); msg->From->Name = ''отправитель''; // ошибка From не существует NULL |
| Автор: Alca 12.5.2009, 15:34 | ||
Это в отладчике? Добавлено через 10 минут и 20 секунд Сделай отдельно тестовый проект и проверь свой код на нем. |
| Автор: Dmi3ev 12.5.2009, 19:38 | ||||||
3315720, все с тобой ясно
ты себя к классикам относишь? кроме тебя я ни у кого не видел такого кода... надо примерно так:
найди десять отличий))) (вместо Form1 можно и this писать, это не суть важно) + спорю, что о подключении
даже не подумал |
| Автор: 3315720 12.5.2009, 20:20 | ||||||||||||||
Умник, что тебе ясно!? Я просил не умничать, а помоч. Я вообще предполагал что определение это как само собой разумеющееся.
Кто такой Form1 компонент не знает вообще, т.к. его модуль не включает в себя модуль формы. А вот Form1 уже знает msg; Поэтому this? или даже NULL можно. Ну и ты проспорил - подключать нужно
Alca: Ошибка при работе, Компилятор говорит, все ОК давай запускать. Тестовый проект дает те же результаты. Компонент вроде без проблем поставился, поэтому думаю он должен быть рабочим. |
| Автор: Alca 12.5.2009, 20:31 |
| Выложи тестовый проект. |
| Автор: Dmi3ev 12.5.2009, 20:52 | ||||||||
это строчка у тебя была написана неверно (вот я и написал, что на классику это не тянет)...
да не умничаю, просто вот этот код:
у меня работает, как часы, а инди 9... Так что... Косяк какой-то у тебя...
это да, не то я немного зацепил... иногда мне так хочется, чтобы кто-нибудь из этих крутышей посидел рядом и так же круто поговорил... (в последний раз |
| Автор: 3315720 12.5.2009, 20:59 | ||||||
| Вот ошибка. "Access violation at adress 0042F1E8 in module 'Project1.exe'. Write of adress 00000012." Выскакивает в момент когда выполняется строка
Здесь sender (как впрочем и From и Recipients) почему-то равен NULL, в то время как в предыдущих версиях все создается сразу... Добавлено через 6 минут и 13 секунд
Вот я и спрашиваю что за ... У меня этот код ничем не лучше моего работает. Может переустановить Indy? |
| Автор: Dmi3ev 12.5.2009, 21:13 | ||
попробуй, у меня 9, и у меня работает... Так что явно, что-то тут нечисто... |
| Автор: 3315720 12.5.2009, 22:49 |
| Помогло. Сразу ошибки посыпались, типа названия некоторые изменились. И Winsocs2.h начал конфликтовать с Winsocs.h. Поправил, вроде заработало. Думаю на этом все. |
| Автор: Alca 12.5.2009, 22:52 |
| Лучше билдер ставить без индейцев, а потом уже 9-ую версию накатывать. |