Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Deck of Cards
id001
Card
defaulttrue
labelC
Code Block
languagecpp
int GRD_API GcaCodeRun(
            HANDLE  hGrd,
            DWORD   dwAlgoName,
            DWORD   dwP1,
            DWORD   *pdwRet,
            DWORD   dwDataFromDongleLng,
            void    *pDataFromDongle,
            DWORD   dwDataToDongleLng,
            void    *pDataToDongle,
            void    *pReserved 
); 	
Expand
titleПараметры функции

hGrd

Не используется.

dwAlgoName

Числовое имя алгоритма

dwP1

Параметр, передаваемый в подфункцию (аналог main ) загружаемого кода.

pdwRet

Параметр, возвращаемый из подфункции (аналог main ) загружаемого кода.

dwDataFromDongleLng

Размер блока данных, получаемых из ключа

pDataFromDongle

Указатель на буфер для блока данных, получаемых из ключа

dwDataToDongleLng

Размер блока данных передаваемых в ключ.

pDataToDongle

Указатель на буфер для блока данных, передаваемых в ключ

pReserved

Зарезервировано. Должно быть NULL.

Expand
titleВозвращаемое значение функции

Набор ошибок Guardant API

Expand
titleОписание

Функция GcaCodeRun аналогична GrdCodeRun из внешнего Guardant API, она служит для запуска кода, предварительно загруженного в ключ, из другого участка загруженного в ключ кода.

При использовании GcaCodeRun, области ОЗУ запускающего и запускаемого загружаемого кода не должны пересекаться или совпадать для предотвращения затирания общей памяти. Рекурсия запрещена. При попытке вызова GcaCodeRun в описанных выше ситуациях возвращается код ошибки GrdE_gcRamAccessViolation. Глубина таких вызовов равна 1. Таким образом, при попытке запуска загружаемого кода из другого загружаемого кода, запущенного, в свою очередь, с помощью GcaCodeRun, возвращается код ошибки GrdE_gcCallDepthOverflow.

В main-функцию пользовательского кода передается параметр dwP1 и буфер данных pDataToDongle. По завершению работы main-функции пользовательского кода, она возвращает pdwRet и буфер данных pDataToDongle.

Время работы main функции пользовательского кода ограничено 3 сек по умолчанию, если иное не задано GcaSetTimeout.

...