Самостоятельное изготовление модулей КС
Добавлено: Пн мар 11, 2013 5:55 pm
ChipExplorer2 позволяет пользователям не только создавать модули калибровок, но и модули контрольных сумм (КС).
Модуль КС представляет собой обычный dll файл, который экспортирует 3 функции:
DLL_EXPORT const wchar_t* __stdcall GetFullDesc(WORD Lang);
DLL_EXPORT const wchar_t* __stdcall DLL_EXPORT GetShortDesc(WORD Lang);
DLL_EXPORT int __stdcall EvalCRC(IStream* Data, IStream* Params, IStream* Output);
GetShortDesc, GetFullDesc возвращает соответственно краткое и полное наименование модуля. Эти данные выводятся при выборе модуля КС. В качестве параметра Lang выступает текущий используемый язык в ChipExplorer.
EvalCRC вычисляет КС прошивки (делает все необходимые преобразования с потоком, в котором хранится прошивка). В качестве параметров служат:
Data - входной поток с прошивкой
Params - параметры (на данный момент не используется)
Output - преобразованный поток с прошивкой
Данная функция возвращает результат выполнения операции (PLUGIN_SUCCESS, ERROR_NULL_DATA, ... Подробнее по кодам см. h файл).
Для того, чтобы ChipExplorer увидел модуль КС, его необходимо разместить в папке checksum основной программы.
В прикрепленном архиве реальный модуль КС для ЭБУ MR140 XARA в виде проекта под CodeBlock на языке С++
Модуль КС представляет собой обычный dll файл, который экспортирует 3 функции:
DLL_EXPORT const wchar_t* __stdcall GetFullDesc(WORD Lang);
DLL_EXPORT const wchar_t* __stdcall DLL_EXPORT GetShortDesc(WORD Lang);
DLL_EXPORT int __stdcall EvalCRC(IStream* Data, IStream* Params, IStream* Output);
GetShortDesc, GetFullDesc возвращает соответственно краткое и полное наименование модуля. Эти данные выводятся при выборе модуля КС. В качестве параметра Lang выступает текущий используемый язык в ChipExplorer.
EvalCRC вычисляет КС прошивки (делает все необходимые преобразования с потоком, в котором хранится прошивка). В качестве параметров служат:
Data - входной поток с прошивкой
Params - параметры (на данный момент не используется)
Output - преобразованный поток с прошивкой
Данная функция возвращает результат выполнения операции (PLUGIN_SUCCESS, ERROR_NULL_DATA, ... Подробнее по кодам см. h файл).
Для того, чтобы ChipExplorer увидел модуль КС, его необходимо разместить в папке checksum основной программы.
В прикрепленном архиве реальный модуль КС для ЭБУ MR140 XARA в виде проекта под CodeBlock на языке С++