gpt4 book ai didi

Delphi如何为新的ITextRange2类型接口(interface)导入类型库?

转载 作者:行者123 更新时间:2023-12-02 05:53:37 24 4
gpt4 key购买 nike

我在 Delphi 中使用 Microsoft 文本对象模型类型库来使用 Microsoft RichEdit 控件的某些功能。该类型库包含在免费软件组件中,并且多年来运行良好。例如,下面是它显示的 ITextDocument 接口(interface):

  ITextDocument = interface(IDispatch)
['{8CC497C0-A1DF-11CE-8098-00AA0047BE5D}']
function Get_Name: WideString; safecall;
function Get_Selection: ITextSelection; safecall;
function Get_StoryCount: Integer; safecall;
...

我不知道它是如何创建的。现在我想更新它以获取在 Windows 8 中为 RichEdit 发布的新界面 (MSFTEDIT.DLL)。例如,ITextDocument2中有一个Range2方法,并且根据MSDN有一个新的ITextRange2接口(interface)。有什么方法可以使用 Delphi 的导入类型库功能来构成新接口(interface)的定义吗?

更新:我弄清楚了如何生成该单位。在 Delphi 中,单击“导入组件”,然后从注册的服务中选择“tom”。这将创建一个与此完全相同的单元。现在的问题是,为了从Windows 8获得新的“tom”界面,如果我需要在上面安装Delphi,那就太麻烦了。一定有更简单的方法。不知何故,我必须在 Win 8 上生成 TLIB,然后将其导入到 Windows 7 上的 Delphi 中。有人知道如何在 Windows 8 上为 msftedit.dll 或 tom 接口(interface)生成 TLIB 吗?

另一个发现:如果我在 Delphi 中以 tlib 形式打开 msftedit.dll,它会显示所有接口(interface)。还有一个导出按钮,但单击时不起作用。什么都没发生。我在帮助文件和网络上搜索了 Type Lib Explorer 帮助,但没有找到任何有关导出按钮不起作用的原因的信息。

最佳答案

您可以使用命令行实用程序tlibimp在Windows 8上导入类型库。您可以在bin中找到tlibimp.exe Delphi 安装目录。由于您希望避免在 Windows 8 计算机上安装 Delphi,因此请将 tlibimp.exe 传输到 Windows 8 计算机。然后运行这个命令:

tlibimp -P msftedit.dll

这将生成您需要的 Pascal 类型库导入文件。

关于Delphi如何为新的ITextRange2类型接口(interface)导入类型库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17937225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com