一見非常に単純な問題に取り組んでいます。MIDL コンパイラを使用して.tlb
、ファイルからタイプ ライブラリ (ファイル)を生成したいと考えてい.idl
ます。ただし、MIDL で.tlb
ファイルを生成することはできません。
これは私のFoo.idl
です:
import "unknwn.idl";
[object, uuid(400075B9-4BD6-45A5-B8B7-9DA0CF7B9B13)]
interface IFoo : IUnknown
{
HRESULT DoFoo([in] int arg, [out, retval] int *result);
}
これは、MIDL コンパイラを呼び出す方法です。
midl Foo.idl /tlb Foo.tlb
次の出力がコンソールに書き込まれます。
Microsoft (R) 32b/64b MIDL Compiler Version 7.00.0555
Copyright (c) Microsoft Corporation. All rights reserved.
Processing .\Foo.idl
Foo.idl
Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\unknwn.idl
unknwn.idl
Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\wtypes.idl
wtypes.idl
Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\basetsd.h
basetsd.h
Processing C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\guiddef.h
guiddef.h
Foo.h
MIDL コンパイラは、 、Foo_i.c
、Foo_p.c
... の3 つのファイルを生成しますが、 Foo.tlb
. 私は何かを誤解していますか、それともここで何が間違っていますか?