Евгений Кислов,
Спасибо за ответы..
Нашел почему были иероглифы, сейчас выполнил так:
Оказывается очень важно:Код:wsByteOrderMark[0] := 16#FEFF; hFile:=SysFile.SysFileOpen(strFileName, am := sysfile.AM_APPEND_PLUS, ADR(udiFileErrorCode)); wPrintLine:=WCONCAT( wsByteOrderMark," "); wPrintLine:=WCONCAT("Версия ПО: ", OSU.CP1251_TO_UNICODE(sSterPV)); wPrintLine:=WCONCAT(wPrintLine, "$N"); SysFile.SysFileWrite(hFile, ADR(wPrintLine), 2*TO_DWORD(WLEN(wPrintLine)), ADR(udiFileErrorCode)); SysFile.SysFileClose(hFile);
1. Добавить к файлу маркер кодировки (UTF16 BE) в моем случае 16#FEFF
2. Указывать 2*TO_DWORD в размере, иначе обрубает строку, а также нужно WSTRING(40)- указать длину, иначе также становится непонятное форматирование, сохранение в нужном формате.
Таким образом отделался малой кровью)
Евгений Кислов, Cs-Cs,
Спасибо огромное!




Ответить с цитированием