Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» FAQ по Borland C++ Builder

Автор: Garrett
Дата сообщения: 29.12.2009 11:26
asi81
потому как если не убрать 8, то 8012 точно не равно 18!

clear2121
Посмотри в МСДН раздел функций для работы с датой-временем у файлов. Там всё есть.
Автор: asi81
Дата сообщения: 29.12.2009 11:44
Garrett
Я согасен, что не получится - но помоему и не должно получаться - запись должна возвращать 32786. А для 18 нужно писать 0012. Если нужен указатель на то что это hex тогда используется 0x012.
Автор: clear2121
Дата сообщения: 29.12.2009 12:19
Garrett
Спасибо за помощь! Но дата/время не у файлов надо, а из НЕХ в TDateTime. Пока не нашел.
И что то не пойму, как использовать Move

Код: AnsiString s;
int fld = 8;
double dbl;

Move( s, dbl, fld );
Автор: Garrett
Дата сообщения: 29.12.2009 14:22
clear2121
В TDateTime полно методов для вытаскивания и впихивания и времени и даты. Зачем изобретать велосипед?
Насчет Move смотри справку. Это быстрее чем писать пост и ждать когда кто-то ответит...
Я, когда программирую с Билдере, стараюсь не использовать дельфийские функции, если можно обойтись нативными. В С++ и ВинАПИ полно своих функций. Плюс код становится более стандартным что-ли.

Добавлено:
asi81
Ты прав конечно, но я не знаю зачем там 8, может число использует не все 16битов, или 8 - это приписка clear2121...
Автор: clear2121
Дата сообщения: 29.12.2009 15:58
Ребят, это чтение напрямую таблицы PARADOX. и там почему то 8ки, как я написал выше.
Сейчас ищу способ дешифровать дату и время. Если есть где посмотреть - буду ВЕСЬМА ПРИЗНАТЕЛЕН.
СПАСИБО ВАМ ЗА ПОМОЩЬ!
Автор: clear2121
Дата сообщения: 29.12.2009 20:22
нашёл даже, что данные хранятся в миллисекундах от РХ. И формула расчёта такова (timestamp / 1000) - (719163 * 86400)
Но у меня что то не вылазит ничего. Ткните носом, ПЛИЗ!
Автор: asi81
Дата сообщения: 30.12.2009 11:10
Столкнулся с такой задачей, есть одна таблица(клиентский датасет) и есть несколько однотипных фреймов, которые одновременно могут отображаться - у этих фреймов есть гриды, которые смотрят на эту таблицу. При этом работа в одном фрейме не должна аффектить работу в другом. Пока что я додумался делать свой ClientDataSet в каждом фрейме, и эти датасеты "клонировать" на исходный с помощью CloneCursor(dataset,0,0); Вопрос - насколько правильна такая методика работы? И существуют ли какие то другие приемы для работы с одним датасетом из разных контролов?
Автор: clear2121
Дата сообщения: 07.01.2010 10:30
Всех с Новым Годом и Рождеством!!!
Не подскажет кто, возможно ли при отладки проги останавливать цикл при достижении какой либо переменной определённого значения?
Например: в цикле i является счётчиком и мне надо чтоб цикл остановился когда i будет = 1000. Вручную очень долго ждать. Есть такой способ?
Автор: Vsevolod
Дата сообщения: 07.01.2010 10:57
break;
если не ошибаюсь
Автор: Garrett
Дата сообщения: 07.01.2010 11:54
clear2121
Можно. Ставишь точку останова, потом на ней правой кнопкой, выбьираешь Брейкпоинт Пропертис, там разные окошки есть
Автор: SeggerLeto
Дата сообщения: 08.01.2010 19:22
подскажите как получить каталог пользователя windows?
Автор: MiCr0s0fT
Дата сообщения: 09.01.2010 01:56
SeggerLeto
Вам поможет функция GetEnvironmentVariable()

Например:
UnicodeString a = GetEnvironmentVariable("USERPROFILE");
Автор: asi81
Дата сообщения: 11.01.2010 11:33
clear2121
Вам уже правильно подсказали, что у Breakpointa можно указывать количество прохождений, которые он может пропускать. Тогда он будет срабатывать каждый N-ный раз.
Но вообще можно сделать тупо
if (i==1000) {
int y=0;
y=y; // Здесь ставите свой брейкпойнт
}
Автор: MiCr0s0fT
Дата сообщения: 16.01.2010 15:29
clear2121
Возможно, проще всего будет сделать:
if (i == k) ShowMessage(i);

где k = тот, шаг, который нужно проверить.
Это если не хотите учиться пользоваться Breakpoint.

P.S. Если проект консольный, попробуйте:
if (i == k) {
cout << i;
getch();
}
Автор: clear2121
Дата сообщения: 01.02.2010 12:00
Подскажите ДРУГИ!!!
Есть старая прога, работающая на БДЕ 4.50, причём БДЕ не установлена, а скинуты файлы DLL в папку с прогой. Пробовал на С++ Билдере 2010 написать прогу - не пошла, ошибка версий БДЕ.
Декомпильнул и увидел, что старая прога написана на Делфи 3. Скачал, поставил с БДЕ. Старая прога отказалась работать. Снёс БДЕ, написал прожку - всё заработало. Т.е. - старая прога работает и пишет в таблицы данные, и я из своей проги смог к таблице подцепиться и качнуть данные.
Но Делфи - это что то.
ВОПРОС - D3 соотносится с C++ Builder 3? Или нужна другая версия Билдера? И если да, то откуда можно скачать инсталятор?

СПАСИБО!!!
Автор: clear2121
Дата сообщения: 01.02.2010 16:26
Спасибо! Нашёл! Вопрос снят.
Автор: igrok878
Дата сообщения: 04.02.2010 00:42
Скажите, есть ли особенности работы Builder enterprise 6.0 в win7 x64? Я имею ввиду, нет ограничений и вообще, нужно ли для x64 отдельную версию качать?
Автор: monsoon
Дата сообщения: 25.02.2010 22:36
Для компиляции из командной строки можно воспользоваться командами:
bpr2mak Project.bpr
make -B -f Project.mak

В результате работы второй команды появляются ошибки.
Установил bcc32pch 2.79, в меню Project добавился пункт "Export Bcc32Pch Makefile..."
Если им воспользоваться, создается mak-файл, с которым make отрабатывает без ошибок.
Кто-нибудь знает можно ли получить mak-файл и как через командную строку, используя bcc32?
Автор: larin58
Дата сообщения: 13.05.2010 01:09
Есть примитивная программа на С++ Builder 6 использующая функцию FindWindow() для поиска хендла окна по его заголовку, программа отлично работает там, где установлен С++ Builder 6, где его нет, программа запускается но функция FindWindow() в ней не работает...
Бинарник собран с отключенными опциями Build with runtime packages и Use dynamic RTL (что бы приложение можно было запустить на другом компьютере).

Подскажите куда копать?
Автор: Tantos
Дата сообщения: 13.05.2010 04:47
larin58
http://cbuilder.ru/index.php/topic,43.0.html
Автор: larin58
Дата сообщения: 13.05.2010 08:59

Цитата:
larin58
http://cbuilder.ru/index.php/topic,43.0.html


Там нет ответа на мой вопрос...
У меня не выполняется функция FindWindow() на компьютерах где не стоит билдер. Остальное работает и зависимостей больше никаких нет.
Автор: Sanya2000
Дата сообщения: 17.05.2010 23:04
В Builder есть опция, по названию функции найти её описание, а не объявление?
Автор: Tantos
Дата сообщения: 18.05.2010 03:31
Sanya2000
F1?
Автор: Sanya2000
Дата сообщения: 18.05.2010 14:21
Допустим, есть функция f(), объявленная в каком-то «*.cpp» файле и описана она в «*.h» файле, в тексте программы я ссылаюсь на эту функцию несколько раз. Теперь через какое-то кол-во времени я возвращаюсь к исходникам и пытаюсь найти содержание ф-ии.
В Builder есть опция «Find declaration», она находит описание ф-и f() в файле «*.h»; но как найти её объявление, я не знаю (знаю но только через Find in Files …). В других ПО таких как IAR есть опция «Goto definition», она находит то что надо. Вот и спрашиваю, может кто докопался до этого в Builder.
Автор: Tantos
Дата сообщения: 19.05.2010 02:39
Sanya2000
Можно попробовать вариант "Find Declaration"+"Open Source/Header File" + Ctrl+F.
Автор: Sanya2000
Дата сообщения: 21.05.2010 15:10
Tantos
Этим и пользуюсь, тока с компилятора на компилятор переходить неудобно.
Дунал CnPack решит проблему, Нерешил.
Автор: olegpronin
Дата сообщения: 04.09.2010 18:44
c++ builder 2010

обнаружил, что убрали функции assignfile(), append(). нужно добавить строку в имеющийся файл..


Цитата:
int m;
int iFileHandle;

void __fastcall TForm1::Button1Click(TObject *Sender)
{
m=StrToInt(Edit1->Text);
iFileHandle = FileOpen("file.text", fmOpenWrite);
FileWrite(iFileHandle, m, 4);
FileClose(iFileHandle);
}


попробовал так - работает, но файл не создает, если его не было, кроме того всегда данные перезаписывает.
может еще способ есть?
Автор: Garrett
Дата сообщения: 04.09.2010 18:51
olegpronin
Используй HANDLE WINAPI CreateFile. В параметрах можно указать любое поведение.
Автор: AnGo
Дата сообщения: 27.09.2010 06:43
Народ, кто-нить использует библу OmniThreadLibrary под C++Builder 2010 ?
Компилиться и вроде бы ставиться, по-крайней мере, в закладке Компоненты->Установленные пакеты видна, а в палитре компонентов - отсутствует.
Автор: gislegend
Дата сообщения: 31.10.2010 14:05
Народ есть у кого-нибудь код программы делитель файлов?
если не трудно скинте пожалуйста!!!!Буде очень благодарен!!!

Страницы: 12345678910111213141516171819202122232425262728

Предыдущая тема: ms exchange


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.