拡張オブジェクトで関数を使用するために XSL を取得しようとしていますが、関数が存在しないというメッセージが表示され続けます。
私のlib_TLB.pasファイルには、
function Get_ReadOnly: WordBool; safecall;
を実装するインターフェイスで定義されており、それをwithIDispatch
に渡していますIXSLProcessor
proc.AddObject( obj, 'foo' );
要素で宣言xmlns:foo="foo"
していますが、使用しようとすると、関数が存在しないとだけ言われます。xsl:stylesheet
<xsl:value-of select="foo:Get_ReadOnly()"/>
どこかで手順が抜けているのでしょうか、それとも呼び方が間違っているのでしょうか?
編集:詳しく調べてみると、プロパティのゲッターである関数では機能しません。その関数には関連付けられたプロパティがあり、正常に機能しましたfoo:get-ReadOnly()
。それか、そのインターフェイスの実装で定義されている関数が「パブリック」ではなく「保護」されているためです。
いずれにせよ、私が試行錯誤して手探りするのではなく、これがどのように機能するかについてのルールが何であるかを誰かが明らかにすることができれば、私は感謝しています.