1. Задайте пути к подключаемым модулям. Для этого вызовите команды Options - Project - Directories - Include и Library.
2. Отключите прежние файлы библиотек (файлы *.lib) и подключите kAPI2D5bc.lib, kAPI3D5bc.lib.
1. Задайте пути к подключаемым модулям. Для этого вызовите команды Project - Options… - Directories/Conditionals - Include path и Library path.
2. Отключите прежние файлы библиотек (файлы *.lib) и подключите kAPI2D5bc.lib, kAPI3D5bc.lib.
1. Задайте пути к подключаемым модулям. Для этого вызовите команды Project - Options… - Directories/Conditionals - Include path и Library path.
3. Отключите прежние файлы библиотек (файлы *.lib) и подключите kAPI5bc.lib.
4. Удалите файлы ks_tlb.h, ks_tlb.cpp, ks_ocx.h, ks_ocx.cpp.
5. Подключите новую библиотеку (файл с расширением tlb). Для этого выполните следующие действия.
5.1. Вызовите команду Project - Import type library - Add.
5.2. Выберите файл kAPI5.tlb.
5.3. Выключите опцию Generate Component Wrapper.
6. Укажите путь к корневой папке размещения примеров (Unit dir name).
7. Нажмите кнопку Create Unit.
8. Переименуйте полученные файлы в ks_tlb.h, ks_tlb.cpp, ks_ocx.h, ks_ocx.cpp.
9. Отредактируйте в файле ks_tlb.cpp подключение ш файла.
Замените файлы LibTool.pas, LIBdb.pas, LDefin.pas, LDefin2D.pas, LDefin3D.pas на новые.
1. Подключите новую библиотеку (файл с расширением tlb). Для этого выполните следующие действия.
2. Вызовите команду Project - Import type library - Add.
3. Выберите файл kAPI5.tlb.
4. Выключите опцию Generate Component Wrapper.
5. Укажите путь к корневой папке размещения примеров (Unit dir name).
6. Нажмите кнопку Create Unit.
7. Переименуйте полученный файл в KsTLB.pas и отредактируйте его первую строку.
Подключите новую библиотеку (файл с расширением tlb). Для этого выполните следующие действия.
1. Вызовите команду Project - References… - Browse….
2. Выберите файл kAPI5.tlb.
1. Удалите файлы libautoold.cpp и libautoold.h с диска и из проекта.
2. Подключите новую библиотеку (файл с расширением tlb). Для этого выполните следующие действия.
2.1. Вызовите команду View - ClassWizard - Add Class - From a type Library.
2.2. Выберите файл V.
2.3. Выделите все интерфейсы в списке.
Для таких библиотек доработки ОБЯЗАТЕЛЬНЫ! Без доработок происходят вылеты при открытии диалогов.
Библиотеки, написанные с использованием VC++, имеющие тип extension dll и использующие классы MFC ( например CString, CWnd, CDialog ), требуют обязательной перекомпиляции под Unicode, т.к. система КОМПАС V10 переведена на Unicode.
Для перекомпиляции необходимо выполнить следующие действия.
1. Создать копию конфигураций Debug и Release.
2. Добавить в новые конфигурации предопределенные объявления _UNICODE, UNICODE.
3. Убрать _MBCS в настройках проекта.
См. Project Settings C/C++ Preprocessor definitions.
Использование Unicode потребует коррекции функций и типов переменных как минимум в функциях, использующих MFC. Например, потребуется замена некоторых переменных типа char * на TCHAR*. Какие именно - компилятор покажет.
TCHAR при компиляции под Unicode заменяется на wchar_t, при компиляции без использования Unicode - заменяется на char.
Строковые константы в коде необходимо окружить дефайном _T, например:
char str[250] = ""; заменяется на
TCHAR str[250] = _T("");
Таким образом, проект можно будет компилировать как под Unicode, для КОМПАС V10, так и под КОМПАС V9. Для этого надо переключиться на неюникодную конфигурацию.
Потребуется замена вызова неюникодных функций, работающих со строками на объявления, которые в зависимости от типа компиляции заменяются на юникодный или неюникодный аналог функции. Например:
strcmp strcpy atof
Данные функции в местах, где будет использоваться TCHAR *, заменить на объявления из файла TCHAR.h. Пример замен:
sprintf _tprintf
atof _tcstod
strlen _tcslen
strcpy _tcscpy
В Коломне разработан макрос, который позволяет упростить перевод текстов на Unicode (cм. ConvertToUnicode.dcm и инструкцию по подключения макроса к VC++ 6.0).
В API КОМПАС 10 появились юникодные аналоги функций и структур, в которых использовались char *.
При необходимости в библиотеке можно вставить их использование.
Проверить работу библиотеки, откомпилированной под Unicode, можно только в КОМПАС-3D V10; в КОМПАС-3D V9 она работать не будет.
Желательно проверить ее подключение в КОМПАС-3D V9. Если библиотека подключается, то для юникодной версии запретить подключение библиотеки, для чего получить версию системы КОМПАС и вернуть ошибку в функции DllMain.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.