Функция GrdGetLastError получает код последней ошибки для указанного хэндла.
Примечание: данная функция работает с указателями, и ее использование требует компиляции проекта с параметром /unsafe.
{dojo-tabs:theme=tundra|id=1} {dojo-tab:title=C|selected=true} *C* int GRD_API GrdGetLastError( HANDLE hGrd, void **ppLastErrFunc ); {dojo-tab} {dojo-tab:title=C#|selected=true} *C#* public static GrdE GrdGetLastError( IntPtr GrdHandle, IntPtr LastErrFunc ) {dojo-tab} {dojo-tab:title=Visual Basic (Declaration)} *Visual Basic* Public Shared Function GrdGetLastError ( _ GrdHandle As IntPtr, _ LastErrFunc As IntPtr _ ) As GrdE {dojo-tab} {dojo-tab:title=Visual C++} *Visual C++* public: static GrdE GrdGetLastError ( IntPtr GrdHandle, IntPtr LastErrFunc ) {dojo-tab} {dojo-tabs} |
|
Функция GrdGetLastError получает код последней ошибки из указанного хэндла. В параметре ppLastErrFunc возвращается указатель на функцию, которая вернула какую-либо ошибку. Например, если не хватило памяти, то функция вернет указатель на VirtualAlloc. Если ошибку сгенерировала функция Guardant API, возвращается NULL, поскольку определить адрес функции нельзя из-за псевдокода. Также NULL возвращается и в других случаях, когда нельзя определить адрес функции-источника ошибки. Для каждого хэндла генерируются свои ошибки. При использовании нескольких хэндлов ошибки одного хендла не перекрывают ошибок для другого. Важная информация. Если заданный хэндл в данный момент используется мультипоточно, то хранящееся в нем значение кода последней ошибки может быть затерто результатом вызова какой-либо функции Guardant API другого потока. В этом случае возможны следующие варианты решения:
|
Пример для используемого средства разработки см. в директории: |