Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
ilya80let
6 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 43
1

dynamic RTL не линкуется

10.10.2013, 11:53. Просмотров 852. Ответов 6
Метки нет (Все метки)

Пытаюсь отправить письмо. Письмо нормально отправляется. Но как только снимаю галку в опциях Build with runtime package, вываливается куча Unresolved external, связанных с IdSMTP. Как с этим бороться?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <IdBaseComponent.hpp>
#include <IdComponent.hpp>
#include <IdMessageClient.hpp>
#include <IdSMTP.hpp>
#include <IdTCPClient.hpp>
#include <IdTCPConnection.hpp>
#include "inifiles.hpp"
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
 
 TIniFile *Ini;
    AnsiString sFile = ExtractFileDir(ParamStr(0));
    AnsiString sFile1 = sFile+ "\\Setting.ini";
    Ini = new TIniFile(sFile1);
    AnsiString Email1, Email2, Files;
    Files = sFile + "\\"+ Ini->ReadString("Setting","Files", "d:\\");
    Email1 = Ini->ReadString("Setting","Email1", "d:\\");
    Email2 = Ini->ReadString("Setting","Email2", "d:\\");
    delete Ini;
 
    TIdSMTP* IdSMTP1 = new TIdSMTP(NULL);
    IdSMTP1->Disconnect();
    IdSMTP1->Host = "mail.master.local";
    IdSMTP1->Port = 25;
 
    IdSMTP1->Connect();
 
        TIdMessage* msg = new TIdMessage(NULL);
        msg->CharSet = "Windows-1251";
        msg->Subject = "parsing";
        msg->Body->Add("include files");
        
        msg->From->Text = "parsing@matvei.com";
        msg->Recipients->EMailAddresses = Email2;
        msg->Priority = TIdMessagePriority(mpHighest);
        TIdAttachment(msg->MessageParts, Files);      
        IdSMTP1->Send(msg);
        IdSMTP1->Disconnect();
        msg->Free();
    return 0;
}
Добавлено через 15 часов 0 минут
Если кто может, попробуйте сделать релизный проект в RAD, может проблема в моем BCB6.

Добавлено через 2 часа 55 минут
решилось подключением к проекту indy.lib
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.10.2013, 11:53
Ответы с готовыми решениями:

"Use dynamic RTL" и появившаяся ошибка
Для начала: я юзаю C++ Builder 2010, Indy-компоненту - IdUDPClient. Писал я...

Не линкуется проект при портировании на старшую версию билдера
Здравствуйте, у меня есть проект на С++Builder 6 рабочий, я его хочу переделать...

Console Application Using the RTL
После отключения опции в проекте, линкер жалуется на команды...

Ошибка при рисовании текста - в XE3 не линкуется метод TCustomStyleServices::DrawText()
#include &lt;System.Types.hpp&gt; #include &lt;Vcl.Themes.hpp&gt;...

Динамическое создание стандартных коммпонентов без RTL и пакетов в DLL.
Доброе время суток.Собственно сабж, есть динамическая библиотека, в которой...

6
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
10.10.2013, 14:59 2
Дело в том что когда кидаешь на форму компонент, Builder автоматом прописывает то с "чем" необходимо линковать что бы работал этот компонент, в данном случае это библиотека Indy
0
ilya80let
6 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 43
10.10.2013, 15:05  [ТС] 3
Попробывал сейчас в проекте с формой, удалить из проекта - там только файл ресурсов и файл unit1.cpp, файла с либой в ней нет.
0
gumi250
431 / 398 / 57
Регистрация: 06.02.2012
Сообщений: 1,373
10.10.2013, 15:09 4
файл с либой лежит в самом билдере
0
ilya80let
6 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 43
10.10.2013, 15:16  [ТС] 5
Цитата Сообщение от gumi250 Посмотреть сообщение
файл с либой лежит в самом билдере
если бы он лежал в билдере, как бы он в релиз прицеплялся. Смысл в том, что в формах его билдер автоматом цепляет(даже не цепляет (незнаю как сказать, потому чтоего не видно)), а если в консоли, то надо самому добавлять к проекту.
1
nick42
Практикантроп
4273 / 2296 / 394
Регистрация: 23.09.2011
Сообщений: 4,908
10.10.2013, 15:20 6
Цитата Сообщение от ilya80let Посмотреть сообщение
Смысл в том, что в формах его билдер автоматом цепляет, а если в консоли, то надо самому добавлять к проекту
Во-во! консоль все карты спутала.
0
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
10.10.2013, 15:44 7
Ну иногда можно заметить как прописалось через
C++
1
#pragma link
Но Indy прописывается в файле проекта *.cbproj который представляет собой xml c настройками

Добавлено через 2 минуты

Не по теме:

не рекомендуется использовать ->Free(); используй delete

1
10.10.2013, 15:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.10.2013, 15:44

Не линкуется импортированный проект, отсутствует "CHART.OBJ"
Здравствуйте. Помогите, пожалуйста, запустить проект в C++ Builder (использую...

dynamic event
Как привязать Event к динамически созданаму контролю и какие параметры...

Сортировка Dynamic Array
есть массив DynamicArray&lt;DynamicArray&lt;AnsiStrin g&gt; &gt; fi; p1 p2 p3 p4 p2 p3 p4...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru