1

Scripting::IDictionary** のパラメーターを持つメンバーを含む必要がある ATL プロジェクトにインターフェイスがありますが、スクリプト ライブラリが既定のライブラリに表示されないため、インターフェイスの説明を含む MIDL ファイルでは使用できません。私は常に scrrun.tlb を持っていて、MIDL で使用しようとしていますが、うまくいきません

コードはこちら: midl-code

4

1 に答える 1

1

以下を IDL に追加します。

importlib("scrrun.dll");

その後、使用できますIDictionary

XP以上で動作します。

以下は、私の IDL の一部の抜粋です。

import "oaidl.idl";
import "ocidl.idl";

library FooLib
{
    importlib("stdole2.tlb");
    importlib("scrrun.dll");

    [
        uuid(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX),
        helpstring("_FooLibEvents Interface")
    ]
    dispinterface _IFooEvents
    {
        properties:
        methods:
        [id(1)] void AnEvent(IDictionary* dict);
    };
    ...
}
于 2010-05-24T06:30:12.107 に答える