Обработка ошибок. Соглашение о вызовах safecall на сервере

   
На этом шаге мы рассмотрим, как преобразуется этот вызов на сервере.

   
Если мы реализовали метод СОМ-сервера как процедуру, поддерживающую соглашение о вызовах safecall, Delphi
скомпилирует его в функцию, возвращающую значение типа HRESULT и поддерживающую соглашение о вызовах stdcall.
Если метод был функцией, то возвращаемое значение преобразуется в еще один параметр этого метода. Сама функция будет реализована
в виде следующего псевдокода:

try
  <тело функции>
  Result := S_OK 
except
  // Подготовка информации для IErrorInfo
  Result := <код ошибки> 
end;

   
Благодаря этому можно свободно генерировать исключения в коде функции, и они будут преобразованы в ошибки СОМ.

   
На следующем шаге мы рассмотрим тестовую программу.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий