Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 7 (http://forum.oszone.net/forumdisplay.php?f=95)
-   -   Перевод программ C++Builder на CodeGear 2007 под Windows 7 (http://forum.oszone.net/showthread.php?t=173800)

blagmi 22-04-2010 15:42 1398566

Перевод программ C++Builder на CodeGear 2007 под Windows 7
 
Я хочу поделится своим опытом перевода программ C++Builder на CodeGear 2007 под Windows 7. И думаю, что это будет полезно для многих программистов, у которых имеются наработки и они не хотят возится со значительными переделками под CodeGear 2009/2010 под Unicode . Мой выбор CodeGear С++Builder 2007 был вызван тем, что он позволяет с минимальными затратами перевести программы в новую среду. Если у Вас нормальный установочный диск с изображением головы человека и шестеренок, то проблем с установкой CodeGear не будет. Я ставил в рекомендуемые пути и не ставил с него BDE. Его я ставил с C++Builder 5.0 и заменил SQLORA8.DLL за 17.09.99. Проблемы, с которыми придется столкнутся:
необходимо создать заново файл проекта и включить в него файлы его составляющие.
в программе надо отключить все ссылки на генератор отчета QuickRepots. Имеющийся в 2007 Rave Reports 7.5.1 придется также отключить. Из-за него не будет компиллироваться программа. В нем есть глюк под Windows 7. Придется использовать в качестве генератора отчета Excel 2007.
Если Вы работаете с BDE и ORACLE, то у Вас возникнет проблема с ORACLE Client 9.2. Последний не устанавливается на Windows 7 из-за староых версий Java. А с более новыми версиями ORACLE Client 10g, 11g не работает BDE. Единственное решение установка ORACLE Client 9.2 вручную следующим образом.
Вначале установите на машине с XP Client ORACLE 9.2 например в каталог C:\ORA92 используя
выбор Runtime. Настройте Client на работу с сервером БД. Потом скопируйте этот каталог на машину с Windows 7. Пропишите в переменных компьютера с Windows 7 путь на C:\ORA92\BIN. Далее зайдите в реестр компьютера XP (через regedit) Software, выделите и эскортируйте ветку ORACLE в выбранный вами файл, например ORA92.reg. После чего зайдите в реестр компьютера Windows 7 и импортируйте этот файл. Перегрузите компьютер. Настройте BDE. У меня данный Client нормально работает с программами CODEGEAR C++Builder 2007 c BDE 5.0 на Windows 7 (32-64-битной). Только надо иметь права администратора и расшарить полный доступ для остальных пользователей на клиентных машинах. А чтобы была возможность работы с БД ORACLE 11g надо обновить (заменить) файлы Client EXE DLL файлы из PATCH 9.2.0.8.
Если у Вас есть строки по БД типа
strcpy(s1,(LPSTR)DIKFm->DBGrid3->SelectedField->FieldName.c_str());//Берем имя столбца
то они не будут работать, (LPSTR) надо исключить и заменить на
AnsiString as=DIKFm->DBGrid3->SelectedField->FieldName;
strcpy(s1,as.c_str());//Берем имя столбца
И еще программы CODEGE 2007 для БД требуют установки на клиентной машине DLL : borlndmm.dll, cc3280mt.dll в тот каталог, где программа exe.
Если у кого есть патч под Rave Reports Windows 7 или более новая версия для CG 2007 бросте его на ***. Не откажусь и от ODAC 6.7 под CODEGE 2007.


Время: 16:38.

Время: 16:38.
© OSzone.net 2001-