Насколько защищено ПО СПК от взлома и последующего тиражирования. Что необходимо сделать для затруднения взлома?
Вид для печати
Насколько защищено ПО СПК от взлома и последующего тиражирования. Что необходимо сделать для затруднения взлома?
Добрый день.
Пробовал запилить тестовый проект, руководствуясь примером "СПК. First Start". Все шло хорошо, пока не добрался до трендов. Сделал по инструкции получил
Что имеется:Код:------ Компиляция : Приложение: Device.Application -------
типизировать код...
[WARNING] SAR_TP: C0200: Отсутствует разрешение для заполнителя CmpCodeMeter
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TrendFbTable: C0086: Не найдено определения для интерфейса 'STO.ITable2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TrendFbRow: C0086: Не найдено определения для интерфейса 'STO.IRow2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TrendFbCursor: C0086: Не найдено определения для интерфейса 'STO.ICursor2'
[WARNING] visutrendstorageaccess, 3.5.5.0 (system): protCloseCursor [TrendFbAbstractTrendStorageAccessor]: C0350: Use of interfaces in VAR_IN_OUT is discouraged as this creates an additional level of indirection and may not work as intended.
[WARNING] visutrendstorageaccess, 3.5.5.0 (system): protReleaseRow [TrendFbAbstractTrendStorageAccessor]: C0350: Use of interfaces in VAR_IN_OUT is discouraged as this creates an additional level of indirection and may not work as intended.
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TableOpen [TrendFbStorage]: C0032: Невозможно конвертировать тип 'TrendFbTable(visutrendstorageaccess, 3.5.5.0 (system))' в тип 'ITable(caa storage, 3.5.4.0 (caa technical workgroup))'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TableOpen [TrendFbStorage]: C0032: Невозможно конвертировать тип 'TrendFbTable(visutrendstorageaccess, 3.5.5.0 (system))' в тип 'ITable(caa storage, 3.5.4.0 (caa technical workgroup))'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): CursorOpen [TrendFbTable]: C0032: Невозможно конвертировать тип 'TrendFbCursor(visutrendstorageaccess, 3.5.5.0 (system))' в тип 'ICursor(caa storage, 3.5.4.0 (caa technical workgroup))'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): RowDelete2 [TrendFbTable]: C0032: Невозможно конвертировать тип 'LINT' в тип 'DWORD'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): RowDelete2 [TrendFbTable]: C0032: Невозможно конвертировать тип 'LINT' в тип 'DWORD'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): RowSelect [TrendFbTable]: C0032: Невозможно конвертировать тип 'TrendFbRow(visutrendstorageaccess, 3.5.5.0 (system))' в тип 'IRow(caa storage, 3.5.4.0 (caa technical workgroup))'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): TrendFbRow: Library VisuTrendStorageAccess needs at least library CAA Storage 3.5.5.0. Please update your device.
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): Get [TrendFbCursor: CursorCurrentRow]: C0032: Невозможно конвертировать тип 'TrendFbRow(visutrendstorageaccess, 3.5.5.0 (system))' в тип 'IRow(caa storage, 3.5.4.0 (caa technical workgroup))'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): CursorSearchRowId2 [TrendFbCursor]: C0032: Невозможно конвертировать тип 'LINT' в тип 'DWORD'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): CursorSearchRowId2 [TrendFbCursor]: C0032: Невозможно конвертировать тип 'LINT' в тип 'DWORD'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): NextTimestampReached [TrendFbTraceBufferedDataStorageWriterLocal]: C0077: Неизвестный тип: 'STO.ICursor2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): NextTimestampReached [TrendFbTraceBufferedDataStorageWriterLocal]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): NextTimestampReached [TrendFbTraceBufferedDataStorageWriterLocal]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfCursor2.CursorSearchRowId2(storageRowInfo.m_idRow)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): NextTimestampReached [TrendFbTraceBufferedDataStorageWriterLocal]: C0035: Вместо 'itfCursor2.CursorSearchRowId2' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDetermineOldestRow [TrendFbTraceBufferedDataStorageWriterLocal]: C0077: Неизвестный тип: 'STO.IRow2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDetermineOldestRow [TrendFbTraceBufferedDataStorageWriterLocal]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDetermineOldestRow [TrendFbTraceBufferedDataStorageWriterLocal]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfRow2.GetRowId(, idRow => m_idOldestRow)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDetermineOldestRow [TrendFbTraceBufferedDataStorageWriterLocal]: C0035: Вместо 'itfRow2.GetRowId' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDeleteOldestRecords [TrendFbTraceBufferedDataStorageWriterLocal]: C0077: Неизвестный тип: 'STO.ITable2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDeleteOldestRecords [TrendFbTraceBufferedDataStorageWriterLocal]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDeleteOldestRecords [TrendFbTraceBufferedDataStorageWriterLocal]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfTable2.RowDelete2(idRow := m_idOldestRow)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvDeleteOldestRecords [TrendFbTraceBufferedDataStorageWriterLocal]: C0035: Вместо 'itfTable2.RowDelete2' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): AnalyzeTimestampsInBuffer [TrendFbTimestampTraverser]: C0077: Неизвестный тип: 'STO.IRow2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): AnalyzeTimestampsInBuffer [TrendFbTimestampTraverser]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): AnalyzeTimestampsInBuffer [TrendFbTimestampTraverser]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfRow2.GetRowId(, idRow => m_paAnalyzedTimestamps^[udiIndex].m_idRow)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): AnalyzeTimestampsInBuffer [TrendFbTimestampTraverser]: C0035: Вместо 'itfRow2.GetRowId' требуется имя программы или экземпляр функционального блока
[WARNING] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataGetValue [TrendFbTrendStorageReader]: C0350: Use of interfaces in VAR_IN_OUT is discouraged as this creates an additional level of indirection and may not work as intended.
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataGetValue [TrendFbTrendStorageReader]: C0077: Неизвестный тип: 'STO.ICursor2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataGetValue [TrendFbTrendStorageReader]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataGetValue [TrendFbTrendStorageReader]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfCursor2.CursorSearchRowId2(idRow := idRow)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataGetValue [TrendFbTrendStorageReader]: C0035: Вместо 'itfCursor2.CursorSearchRowId2' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0077: Неизвестный тип: 'STO.IRow2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0077: Неизвестный тип: 'STO.ICursor2'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfRow2.GetRowId(, idRow => idRowLowerBound)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0035: Вместо 'itfRow2.GetRowId' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfRow2.GetRowId(, idRow => idRowUpperBound)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0035: Вместо 'itfRow2.GetRowId' требуется имя программы или экземпляр функционального блока
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0235: Второй операнд __QueryInterface должен быть указателем интерфейса
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0032: Невозможно конвертировать тип 'Неизвестный тип: 'itfCursor2.CursorSearchRowId2(idRow := idRowMiddle)'' в тип 'ERROR'
[ERROR] visutrendstorageaccess, 3.5.5.0 (system): prvTblTrendDataFindTimestamp [TrendFbTrendStorageReader]: C0035: Вместо 'itfCursor2.CursorSearchRowId2' требуется имя программы или экземпляр функционального блока
Компиляция завершена -- 44 ошибок, 4 предупреждений
1. CODESYS 3.5 SP5 Patch 5
2. SPK Repository Archive 3.5.4.20
3. Библиотеки OWEN 3.5.4.8
4. Target-файлы 3.5.4.26
5. СПК 110 с прошивкой 5.472
Как с этим бороться?
Тренды в настоящий момент не поддержаны.
Опа... Они же вроде работали раньше?
1. Возможно ли как-либо графически отслеживать изменения переменных?
2. Когда планируется ввести их поддержку.
3. Как можно выйти из этой ситуации, когда постоянно мониторить данные нет возможности, а их история нужна?
А для чего тогда в обучающем пособии приведены примеры именно с трендами? Если их нет, не было и в ближайшем будущем не будет?
столкнуллся со следующей проблемой при сбое питания спк 107 24в не хочет грузится либо белый экран или заставка овен но если перетыкнуть фишку питания все в норме уже 3 панели так себя ведут блоки питания применяли и овеновские и других производителей эфект тот же поставили на других объектах спк 110 те перегружаются без проблем подскажите в каком направлении думать