Форум 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 » Передача строк

   
Автор / Author Тема / Topic: Передача строк
andreitopaz
Junior Member / Новичок
Участник № / Member № 1691


Icon 5 отправлено / posted      Профиль для / Profile for andreitopaz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
У меня возникла проблема с передачей строк из Trace Mode через подключаемую библиотеку - передаётся только первый символ. Как решить эту проблему?
Сообщения / Posts 12 | Из / 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 
А каким образом пытаетесь передать строку? Пример привести кода библиотеки и описание ее в ТМ6 можете?
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
andreitopaz
Junior Member / Новичок
Участник № / Member № 1691


Icon 1 отправлено / posted      Профиль для / Profile for andreitopaz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вот пример:
В MS Visual Studio
------------------------------------------------
extern "C" __declspec(dllexport) void __cdecl add(__int8 type,__int8 num, LPSTR name)
{
static char ch[3];
static char str[100];
static __int32 nb;
HANDLE fl=CreateFileA("C:\\KCO-2\\fromscad.csv",GENERIC_WRITE,FILE_SHARE_WRITE,0,CREATE_ALWAYS,0,0);
if(fl!=INVALID_HANDLE_VALUE){
if(SetFilePointer(fl,0,NULL,FILE_END)!=INVALID_SET_FILE_POINTER)
{
str[0]='\0';
switch(type)
{
case 1:strcat(str,"OAR");break;
}
//strcat(str,itoa(type,ch,10));
strcat(str,";");
strcat(str,itoa(num,ch,10));
strcat(str,";");
strcat(str,name);
strcat(str,"\n");
WriteFile(fl,&str,sizeof(str),(LPDWORD)&nb,NULL);
}
CloseHandle(fl);
}
}

В Trace Mode на ST:
----------------------------------------------
PROGRAM
VAR_INPUT OAR1_Active : BOOL; END_VAR
VAR_INPUT OAR1_Name : STRING; END_VAR

if OAR1_Active then
write(1,1,OAR1_Name);
end_if;

END_PROGRAM

Сообщения / Posts 12 | Из / From: Молдова  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
andreitopaz
Junior Member / Новичок
Участник № / Member № 1691


Icon 1 отправлено / posted      Профиль для / Profile for andreitopaz           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Передача идёт через переменную - OAR1_Name
Сообщения / Posts 12 | Из / 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 
В TM6 используется UNICODE.
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Student
Junior Member / Новичок
Участник № / Member № 1948


Icon 1 отправлено / posted      Профиль для / Profile for Student           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
LPSTR - это указатель, а не STRING
Сообщения / Posts 10 | Из / 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