Проектный файл WinCC 7.0 SP2
Рис. 5. Cодержимое потока ProjectSettings из проектного файла WinCC версии 7.0 SP2
Таблица 4. Cодержимое потока ProjectSettings проектного файла WinCC версии 7.0 SP2 после анализа
Поля |
Назначение |
Комментарий |
||
Адрес (HEX) |
Длина, байт (HEX) |
Значение (HEX или ASCII) |
||
00 |
04 |
00 00 10 00 |
Неизвестно |
|
04 |
01 |
08 |
Длина поля имени компьютера |
|
05 |
08 |
PROASUTP |
Имя компьютера |
|
0D |
01 |
34 |
Длина поля сетевого пути к конфигурационной базе данных проекта |
|
0E |
34 |
\\PROASUTP\WinCC_Project_PrjWinCC702\PrjWinCC702.mdf |
Сетевой путь к конфигурационной базе данных проекта |
|
42 |
01 |
1D |
Длина поля DSN |
|
43 |
1D |
CC_PrjWinCC_11_02_16_13_16_26 |
DSN |
|
60 |
05 |
0100 00 00 02 |
Неизвестно |
Разбивка на поля произвольная |
65 |
11 |
00 00 00 00 00 00 00 00 00 00 00 |
Неизвестно |
|
70 |
04 |
34 0D F2 01 |
Неизвестно |
|
74 |
0D |
00 00 00 00 00 00 00 00 00 00 00 00 00 |
Неизвестно |
|
81 |
01 |
01 |
Неизвестно |
|
82 |
0A |
00 00 00 00 00 00 00 00 00 00 |
Неизвестно |
|
8C |
01 |
0E |
Длина поля имени экземпляра MSSQL сервера. |
В данном случае это Microsoft SQL Server 2005 |
8D |
0E |
PROASUTP\WinCC |
Имя экземпляра MS SQL Server |
|
9B |
14 |
00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |
Неизвестно |
|
Выводы
- От версии к версии формат проектного файла WinCC может меняться, поэтому надо быть осторожнее в использовании данной информации для новых версий WinCC и для каждой новой версии проводить отдельное исследование;
- Строки в проектном файле хранятся в ASCII, похоже это связано с тем, что WinCC на текущий момент не поддерживает UNICODE;
- Очевидный факт, в содержимом ProjectSettings имеются пробелы – поля, назначение которых еще предстоит выяснить;
- Содержимое ProjectSettings более менее понятно для известных полей: сначала идет байт, в котором указывается длина строки в байтах, а затем идет собственно сама строка;
- Из личного опыта, при изменении длины имени компьютера, пути к проекту WinCC или имени самого проекта, длина структуры ProjectSettings меняется, хотя размер неизвестных полей остается постоянным, что также можно использовать.