2010-08-30 65 views
5

我正在尝试为Outlook 2003,2007和2010(以及其他OLE服务器)生成_TLB导入单元,类似于与Delphi for Outlook 2000和2002捆绑在一起的导入单元。但是,我无法将类型库导入程序还会生成捕获绑定单元中的OLE服务器事件的代码。到“生成组件封装”选项仅会为直接实例化的服务器,而不是那些只通过像TInspectorTExplorer其他对象的方法返回的对象包装等是否有可能让Delphi为导入的OLE/COM类型库自动生成事件支持代码?

我当然可以创建事件处理代码我自己,但这将是非常乏味的工作。

有谁知道包含德尔福2010年(tlibimp.exe)的进口商是否可以调整生成该代码?我真的怀疑,当天Borland创建了现有的手动Outlook2000.pasOutlookXP.pas单元...

有没有其他的工具可以做到这一点?

+0

奥利弗检查此链接http://chrisbensen.blogspot.com/2007/07/how-to-import-type-library- from-command.html – RRUZ 2010-08-30 19:41:22

+0

@RRUZ:谢谢。我知道那篇文章。那实际上是我的出发点。但不幸的是,没有关于生成事件包装器的信息,特别是对于不可创建的服务器... – 2010-08-30 20:19:35

回答

4

好问题!我从来没有注意到这些组件没有创建(我只使用Word_TLB)。用tlibimp玩了一下之后,我发现你需要-Yc+标志。可能所有忽略标志都是默认打开的。

注:这是德尔福7 tlibimp.exe版本7.0.4.453

+0

谢谢,但不幸的是,没有运气。通过使用'-Ya +'选项,我又增加了两个类('TOutlookApplication'(包括事件!)和'TDoNotUseMeFolder'(?!)),但是这是关于它的...仍然没有生成的TInspector或者TExplorer文件... :( – 2010-08-31 08:06:20

+0

)BTW:'tlibimp.exe'的命令行帮助指出了每个选项的默认状态,并根据(我的测试也证实)'-Yc'已经打开(即'+')默认为 – 2010-08-31 08:06:39

+0

@Oliver Giesen:我使用Delphi 7的tlibimp.exe。这些是我使用/?时的默认选项:-C- -P + -Ic- -Ip- -Ha + -Hr + -Hs + -Cw- -Ps + - Pt-O + -R + -XM- -W + -Wc + -Yc- -Yh -Yp- -Yr- -Ya-(默认C++选项不包括在内),所以我只将-Yc-选项更改为-Yc +并且它工作正常 – 2010-08-31 08:51:57

相关问题