Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.90
NiТR0
0 / 0 / 0
Регистрация: 22.08.2011
Сообщений: 18
#1

Файлы определения модуля *.def - C++

15.12.2011, 14:32. Просмотров 4303. Ответов 2
Метки нет (Все метки)

Захотел использовать *.def для экспорта ф-ий.Нашёл в инете след. материал:

Файлы определения модуля MyDLL.def :

LIBRARY "MyDLL"
DESCRIPTION "MyDLL - пример DLL-библиотеки"
EXPORTS MyFunction @1

В строке экспорта функции можно указать ее порядковый номер, поставив перед ним символ @. Этот номер будет затем использоваться при обращении к GetProcAddress (). На самом деле компилятор присваивает порядковые номера всем экспортируемым объектам. Однако способ, которым он это делает, отчасти непредсказуем, если не присвоить эти номера явно. В строке экспорта можно использовать параметр NONAME. Он запрещает компилятору включать имя функции в таблицу экспортирования DLL:

MyFunction @1 NONAME

...Приложениям, загружающим библиотеки DLL динамически, потребуется передавать в GetProcAddress порядковый номер, а не имя функции.


Так вот. НЕ РАБОТАЕТ!
Пишет:
— для 1 строки :
error C2143: syntax error : missing '''' before ''string''
error C2501: ''LIBRARY'' : missing storage-class or type specifiers
— для 3 строки :
error C2018: unknown character ''0x40''

Вопрос: ПОЧЕМУ? ... и КАК БЫТЬ?
Подскажите пожалуйста.
Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2011, 14:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Файлы определения модуля *.def (C++):

Файлы (определения месяца, в котором родилось максимальное количество студентов) - C++
В файле хранится информация о студентах института: факультет, группа, ФИО, домашний адрес, месяц и год рождения. Написать программу...

Зачем нужен .def - файл? - C++
Не так давно, где-то лет 5 назад, когда я учился писать первые программы на С++, я установил Borland C++ 5.0 (поскольку МАДИшный Borland C...

Как добавить .def файл в проект? - C++
Как добавить .def файл в проект?

Как создать и подключить .def file? - C++
Мне нужно скомпилировать dll вместе с def. Visual Studio 2015 Win32 project. Что делал: 1. Создал одноименный файл в каталоге с...

Строка символов. Все вхождения ‘abc’ заменить на ‘def’ - C++
Дана строка символов. Необходимо все вхождения ‘abc’ заменить на ‘def’

Преобразовать строку: все вхождения abc заменить на def - C++
написать программу Дана строка из 80 символов, известно что в начале строки s находится не более 40 латинских букв, за которыми следуют...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
bazile
58 / 34 / 20
Регистрация: 15.03.2007
Сообщений: 6,911
15.12.2011, 15:19 #2
Такое подозрение что ты добавил def файл в проект, среда считает его C++ файлом и пытается его откомпилировать. DEF файл надо подключать в настройках проекта особым образом. В VS.NET 2003 это делается в свойства проекта. Ветка Linker -> Input. Параметр Module Definition File. Укажи там его имя. Должно помочь.
NiТR0
0 / 0 / 0
Регистрация: 22.08.2011
Сообщений: 18
15.12.2011, 18:10  [ТС] #3
Да да, на самом деле, просто я def includom подключал.
Убрал и всё хорошо. =)
Спасибо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2011, 18:10
Привет! Вот еще темы с ответами:

Заменить в строке все вхождения abc на def и напечатать полученную строку - C++
Здравствуйте. В программировании мозги не много соображают, что как работает понять могу, но вот написать самому редко получается. ...

Не находит def файлы - Assembler
Зотел запустить файл, но выдало ошибку, что неможет найти файли. include \masm32\include\ogl\gl.def include \masm32\include\ogl\glu.def...

Реализовать в виде модуля подпрограмму определения отношения дробей «больше или равна» - Pascal ABC
Помогите с решением задачи.Реализовать в виде модуля подпрограмму определения отношения дробей «больше или равна». Внизу образец unit...

Не отображаются jpg файлы в FileListBox - не смотря на подключение модуля jpeg в Uses - Delphi
В маске FileListBox - стоит *.jpg, *.jpeg - но если во время выполнения программы, зайти в FileListBox - отображаются только jpeg-файлы -...


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

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

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