Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version » Внешние функции - dll

   
Автор / Author Тема / Topic: Внешние функции - dll
_Alexander_
Junior Member / Новичок
Участник № / Member № 3795


Icon 1 отправлено / posted      Профиль для / Profile for _Alexander_           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Подскажите как правильно создавать dll, как должны быть объявлены функции? Возможно существует SDK для создания внешних dll.
Какой компилятор использовать для создания dll?
Не могу найти ни одного документа, где бы это было описано. Подскажите где можно прочитать об этом.
Заранее спасибо.

Сообщения / Posts 2 | Из / From: Ukraine  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Лучше всего внешние DLL создавать на С++ в средах: MS VS C++ 6.0 или MS VS C++ 2003. Пробовал делать в MS VS C++ 2005, но не заработало, видимо из-за особенностей managed кода.
Правила создания - такие же как и для всех DLL - это можно и в MSDN почитать. Из особенностей - те функции, которые хотите вызывать из DLL в ТМ, должны быть экспортируемыми (надо правильно их определить в самой DLL), например так:
extern "C" __declspec(dllexport) int __cdecl GetTankPH(int TankID)

И еще одна из особенностей - при подключении и описании аргументов внешних функций из подключаемой DLL все аргументы типа int в ТМ указывайте как long. Иначе возможны ошибки в реальном времени работы МРВ при обращении к DLL. Ну - это из личного опыта. [Улыбка / Smile]

IP / IP: IP адрес / IP address | Report this post to a Moderator
Alexandra
Forum Member / Участник форума
Участник № / Member № 3317


Icon 1 отправлено / posted      Профиль для / Profile for Alexandra           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
а поддерживает ли MicroTM внешние dll ?
Сообщения / Posts 42 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Насколько я знаю - нет.
Хотя под Микро МРВ для одного контроллера под управлением MS WinCE 5.0 писал драйвер УСО как RWH.DLL, но сомневаюсь, что под данную ОС API вызова внешних DLL будет работать и в математике.

IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
МикроМРВ не поддерживает внешние dll.
Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Baikal_E
Forum Haunter / Завсегдатай форума
Участник № / Member № 4135


Icon 1 отправлено / posted      Профиль для / Profile for Baikal_E           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Поддерживает ли EmbeddedRTM внешние dll в WinCE ?
Сообщения / Posts 127 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
МикроМРВ (в том числе и для CE) не поддерживает внешние dll.
Сообщения / Posts 17315 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Baikal_E
Forum Haunter / Завсегдатай форума
Участник № / Member № 4135


Icon 1 отправлено / posted      Профиль для / Profile for Baikal_E           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо за ответ!!!!
Сообщения / Posts 127 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2