Добавление пользовательских функций в XSL в Delphi 7

Я пытаюсь заставить XSL использовать функции для объекта расширения, но все, что я пытаюсь, просто говорит мне, что функции не существуют.

В моем файле lib_TLB.pas у меня есть

function Get_ReadOnly: WordBool; safecall;

определяется на интерфейсе, который реализует IDispatchи я передаю это моему IXSLProcessor с proc.AddObject( obj, 'foo' );

Я заявляю xmlns:foo="foo" в xsl:stylesheet элемент, но когда я пытаюсь использовать <xsl:value-of select="foo:Get_ReadOnly()"/> Это просто говорит, что функция не существует.

Я что-то пропускаю или называю неправильно?

РЕДАКТИРОВАТЬ: При ближайшем рассмотрении, он работает, но не для какой-либо функции, которая является получателем свойства. Эта функция имеет связанное свойство, и foo:get-ReadOnly() работал нормально. Либо так, либо потому, что функция, определенная в реализации этого интерфейса, является "защищенной", а не "публичной".

В любом случае, если кто-нибудь сможет пролить некоторый свет на то, каковы правила, как это работает, а не на то, чтобы я возился с методом проб и ошибок, я был бы благодарен.

0 ответов

Другие вопросы по тегам