Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FAQ по Borland C++ Builder

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

RuKamikadze

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Имхо, при использовании "<<" в ofstream всегда будет текст, если ты не переопределишь под себя "<<"...

 
Т.е. "<<" изначально, поумолчанию определяет режим загрузки информации в файл в виде набора "чаровских" символов или 8-битных пакетов. А любые данные другого типа, не "чаровского" с помощью оператора "<<" записать в файл не получится?
 
Еще раз благодарю за разъяснения Garrett.

Всего записей: 6 | Зарегистр. 02-04-2007 | Отправлено: 00:19 03-04-2007
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А любые данные другого типа, не "чаровского" с помощью оператора "<<" записать в файл не получится?

Я ж написал, если ты не переопределишь под себя "<<".
На мой взгляд, чем изобретать велосипед, лучше написать write, тем более, что по отношению ко всему коду программы, таких операторов много не будет

Всего записей: 2736 | Зарегистр. 16-10-2003 | Отправлено: 00:26 03-04-2007
RuKamikadze

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Garrett

Цитата:
Исправь в проекте пути к этому компоненту.

 
А где эти пути править, в каком файле? Я их собственноручно нигде и не прописывал.

Всего записей: 6 | Зарегистр. 02-04-2007 | Отправлено: 00:30 03-04-2007
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
А где эти пути править, в каком файле? Я их собственноручно нигде и не прописывал.

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

Всего записей: 2736 | Зарегистр. 16-10-2003 | Отправлено: 00:41 03-04-2007
RuKamikadze

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ты прав, я разобрался - все работает!!!!
Блин, спасибо Garrett, очень помог, я столько с этим...
Если хочешь, пивом проставлюсь=)

Всего записей: 6 | Зарегистр. 02-04-2007 | Отправлено: 00:51 03-04-2007
monsoon



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
получил проект с исходниками на BCB5, строящий отчет в Excel. Перекомпилировал в BCB6.  
Выдается ошибка EOleSYSError "неверный тип переменной".  
Сравнивал #pragma link в cpp и #include в h для BCB5 и BCB6 после компиляции - одинаковы.
 

Код:
AnsiString Cell_mas1[]={"E","G","I","K","N","P","R","T","V","X","Z","AB","AD","AF"}  
...  
WS.OlePropertyGet("Range",Cell_mas1[i]+"3:"+Cell_mas1[i]+"3").OlePropertyGet("Interior").OlePropertySet("ColorIndex",40);  
 
 
Ошибка исчезает если добавить ф-ию c_str()  
WS.OlePropertyGet("Range",(Cell_mas1+"3:"+Cell_mas1+"3").c_str()).OlePropertyGet("Interior").OlePropertySet("ColorIndex",40);  
 
Но очень много нужно перелопачивать кода.
Почему в BCB5 происходит автоматическое привидение типа, а в BCB6 возникает ошибка?  
Можно как-то избавиться от ошибки без добавления c_str()?

Всего записей: 1255 | Зарегистр. 30-01-2003 | Отправлено: 16:05 03-04-2007
afiget



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Почему в BCB5 происходит автоматическое привидение типа, а в BCB6 возникает ошибка?

Вроде как используются разные версии библиотеки-обертки для офисных компонент. В 5-ке обертка требовала один тип, в 6-ке тип изменили или в библиотеке убрали (по каким-то соображениям) принудительное приведение типа.

Всего записей: 545 | Зарегистр. 31-12-2005 | Отправлено: 13:21 04-04-2007
Larry



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите, как реализовать перенос программы, написанной на С++Builder (из Borland Studio 2006) на другие компьютеры без файлов *.bpl. В частности, делая по аналогии с указанием:

Цитата:
Чтобы перенести прогу на комп без билдера, и если ты работаешь только со стандартными компонентами и не пользуешь базы данных, по в свойствах проекта тыкни Release (Compiler), сними галочку с Build with Runtime Packages (Packages), сними галочку Use dynamic RTL (Linker) и прихвати в папочку программы borlndmm.dll и cc3260mt.dll из папки bin билдера.

 
Не нашел опции Build with Runtime Packages (Packages) в разделе Compiler.
 
Заранее благодарен за помощь...

----------
Never put off till tomorrow what can be put off till day after tomorrow just as well

Всего записей: 3119 | Зарегистр. 20-07-2005 | Отправлено: 11:57 15-04-2007
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Larry
У меня в Turbo C++ так:
Project Options / Linker / Linking / надо снять галочку с "Use dinamic RTL"
Project Options / Packages / надо снять галочку с "Build with runtime packages"

Всего записей: 2736 | Зарегистр. 16-10-2003 | Отправлено: 12:13 15-04-2007 | Исправлено: Garrett, 12:43 15-04-2007
bandyn



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Пожта подскажите. Нужно сделать так чтобы прога запускалась с определенным приоритетом процессора например: ниже-среднего.
1. Как проекту (программе) задать приоритет процессора?
2. Как узнать колличество доступных процессоров в системе?
3. Как задать соответствие процессоров (например программа должны выполняться только на 2-м процессоре) ?
 
Среда разработки: BCB 6 (Update 4).
Спасибо.

Всего записей: 394 | Зарегистр. 18-11-2004 | Отправлено: 14:19 15-04-2007
Abs62



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bandyn

Цитата:
1. Как проекту (программе) задать приоритет процессора?

SetPriorityClass, SetThreadPriority.

Цитата:
2. Как узнать колличество доступных процессоров в системе?

GetSystemInfo, GetProcessAffinityMask.

Цитата:
3. Как задать соответствие процессоров (например программа должны выполняться только на 2-м процессоре) ?

SetThreadAffinityMask.

Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 15:16 15-04-2007 | Исправлено: Abs62, 15:16 15-04-2007
bolt90

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как можно сохранить параметры(цвета, шрифт и т.д) програмы в ini файл, а потом загрузить.

Всего записей: 3 | Зарегистр. 15-04-2007 | Отправлено: 18:06 15-04-2007
Jokerjar



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bolt90, это позволит сделать класс TIniFile. Посмотри в хелпе

Всего записей: 591 | Зарегистр. 22-03-2006 | Отправлено: 14:32 16-04-2007
bolt90

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Jokerjar, сенк нашол, но при запуске програмы выдает ошыбку  
[C++ Error] Unit1.cpp(15): E2451 Undefined symbol 'TIniFile'
[C++ Error] Unit1.cpp(15): E2451 Undefined symbol 'ini'
[C++ Error] Unit1.cpp(16): E2303 Type name expected
[C++ Error] Unit1.cpp(16): E2379 Statement missing ;
[C++ Error] Unit1.cpp(24): E2158 Operand of 'delete' must be non-const pointer

Всего записей: 3 | Зарегистр. 15-04-2007 | Отправлено: 17:53 16-04-2007
dyr farot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
при "запуске" или при сборке?
смотри справку на предмет необходимых для TIniFile заголовков.

Всего записей: 697 | Зарегистр. 03-08-2004 | Отправлено: 19:53 16-04-2007
bolt90

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уже разобрался, все работает отлично. всем спасибо )

Всего записей: 3 | Зарегистр. 15-04-2007 | Отправлено: 20:18 16-04-2007
markess

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
хотел спросить - уменя есть фрагмент кода dll, которая использует другую dll, хочу на С++билдре вставить, что б можно было использовать, вот код  
 
Function InitPort(ComName:Ansistring):boolean;stdcall;
var Succes:boolean;
begin
{
LibHandle:=0;
LibHandle:=LoadLibrary('dllcl.dll');
if LibHandle=0 then begin
                    result:=-1000;
                    exit
                    end;
// Получаю входной адрес для процедуры
finitcom:=GetProcAddress(LibHandle,'initcom');
if finitcom=nil then begin
                    result:=-4000;
                    exit
                    end;
}
// Инициализирую порт}
//tinitcom(finitcom)(ComName,9600,Succes);
initcom(ComName,9600,Succes);
result:=Succes
end;

Всего записей: 1 | Зарегистр. 17-04-2007 | Отправлено: 11:50 17-04-2007
Tantos



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
bool InitPort(Ansistring ComName)
{
bool Succes = false;
typedef bool (*LPINITCOM) (AnsiString, unsigned, bool&);
LPINITCOM InitCom;
HINSTANCE LibHandle;
 
LibHandle = LoadLibrary("dllcl.dll");
if( LibHandle )
 {
  InitCom = GetProcAddress(LibHandle,"initcom");
  if( InitCom )
   {
    InitCom(ComName,9600,Succes);
    FreeLibrary(LibHandle);
   }
  else {
   FreeLibrary(LibHandle);
   return -1000;
  }
 }
else return -1000;
return Succes;
}
 

Замечание: меня ОЧЕНЬ смущает передача в dll AnsiString. Вероятней всего, придется в твой проект добавить MEMMGR.LIB. Подробнее - см. в комментариях при создании проекта dll с DLL Wizard'ом.

Всего записей: 1038 | Зарегистр. 31-05-2005 | Отправлено: 11:02 18-04-2007 | Исправлено: Tantos, 11:04 18-04-2007
fidgik

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скажите плиз где прочитать или как правильно подключить  
библиотеку lib скомпиленого из ВС  
и можно прогить без заголовочного файла?

Всего записей: 39 | Зарегистр. 02-05-2004 | Отправлено: 18:03 01-05-2007
Graw_Moe

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
совсем недавно общаюсь с BCB.. и вопрос такой:
как сделать, чтобы не закрывалось окно консольного приложения после компиляции и запуска? (имеется ввиду запуск в самом Билдере, конечно)

Всего записей: 43 | Зарегистр. 01-12-2002 | Отправлено: 21:50 15-05-2007 | Исправлено: Graw_Moe, 21:52 15-05-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FAQ по Borland C++ Builder


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru