Форум 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 / Algorithm Programming Languages » Проблема с передачей строк из внешней DLL

   
Автор / Author Тема / Topic: Проблема с передачей строк из внешней DLL
shugai
Active Forum Member / Активный участник форума
Участник № / Member № 1285


Icon 1 отправлено / posted      Профиль для / Profile for shugai           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день!
Ответьте пожалуйста на пару вопросов!
1 вопрос.
Я написал фиблиотеку dll на Delphi. Функции с числовыми аргументами работают коректно, а вот функции в которые передаются строки, нет. Ни как не могу передать строку в функцию dll библиотеки. Или же наоборот не могу строковому аргументу процедуры присвоить какое либо значение. Например, процедура XXX(var s1,s2:string), s1,s2 передаются по ссылке в процедуре например я хочу присвоить s1='123' s2='456'
Это присваивание не идет. Пробовал писать как XXX(var s1,s2:PChar)? Тоже не идет. В обычном делфи проекте все функции библиотеки работают. Как быть? Что посоветуете?

2 вопрос.
Почему в ТМ фигурирует тип string, а когда описываю функцию dll библиотеки в типах возвращаемого значения нет типа string.

3 вопрос.
Тип string в ТМ такой же как в С++ ?

Сообщения / Posts 93 | Из / 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 
для С++

В dll нужно использовать WCHAR. С ним так же как с char можно работать. Этим типом кодируются символы unicode. А перевод из WCHAR в char производится функцией WideCharToMultiByte.

как эта функция реализуется в delphi подсказать не можем.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Тужиков Олег
Junior Member / Новичок
Участник № / Member № 2822


Icon 1 отправлено / posted      Профиль для / Profile for Тужиков Олег           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Уважаемая тех. поддержка!
Немогли бы Вы сообщить мне координаты Майбороды Алексея. Или переслать мой адрес pir34@mail.ru для проведения переговоров.

Сообщения / Posts 9 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
shugai
Active Forum Member / Активный участник форума
Участник № / Member № 1285


Icon 1 отправлено / posted      Профиль для / Profile for shugai           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте.
У меня следующая проблема.
Я написал dll библиотеку для обмена СМС сообщениями. В этой библиотеке есть функция по приему СМС. В аргумент программы типа String записывается текст сообщения. Для вывода на экран я использую коментарий канала hex16. На экране текст СМС не выводиться, хотя в аргументе программы текст содержиться.
Почему не выводиться текст?
Может быть это связано с длиной текста, так как аргумент программы типа String, в который записывается номер отправителя СМС, таким способом выводиться на экран.

Сообщения / Posts 93 | Из / 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 
1. Контактная информация конфиденциальна, предоставить ее Вам мы не можем.

2. А в аргументах экрана эта строка появляется?

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
shugai
Active Forum Member / Активный участник форума
Участник № / Member № 1285


Icon 1 отправлено / posted      Профиль для / Profile for shugai           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Если текст СМ короткий (например 10 символов ), то текст СМС выводится, если СМС содержит большое кол-во символов (например, 40 символов), то такая смс уже не выводится. Аргументы экрана привязаны к аргументам программы.
Сообщения / Posts 93 | Из / 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 
Вам надо ограничить СМС 39 символами, иначе атрибут комментарий не воспринимает строку.
Сообщения / Posts 17083 | Из / 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