标签: toolsapi

自动添加单元到项目

我在工作的组件上Delphi 7Delphi 2006,在那里我使用,我需要添加到一个单元.dpr上的组件自动删除该项目的文件.就像Eureka Log自动将单元'ExceptionLog'添加到项目文件中一样:

在此输入图像描述

当我将组件放在项目中的任何表单上时,有人能告诉我如何以编程方式将单元添加到项目文件中吗?

delphi delphi-7 delphi-2006 opentools toolsapi

5
推荐指数
1
解决办法
3301
查看次数

如何用D2007区分编译和构建?

我已经成功注册了IDE通知程序(IOTAIDENotifier80),因此我收到了AfterCompile通知.

是否有可能找出项目是否构建而不仅仅是编译/制作?

我已经找到了关于实现a的答案,IOTAProjectCompileNotifier但这在D2007中不可用.

还有其他方法吗?我没有办法,因为这只适用于内部专家.

更新:我需要使用包含版本信息资源的外部.rc文件复制"AutoInc内部版本号"功能.也许这可以通过BuildEvents完成?虽然我喜欢在IDE中记录消息的能力,但显示更新的版本号...

delphi delphi-2007 toolsapi

5
推荐指数
1
解决办法
184
查看次数

如何使用OpenToolsAPI在源编辑器中突出显示特定行

是否有可能在活动编辑器窗口中突出显示特定行,就像Delphi IDE突出显示编译器错误时那样?

delphi toolsapi

5
推荐指数
1
解决办法
634
查看次数

如何在Delphi调用堆栈窗口中隐藏"非用户"堆栈帧?

在Delphi调用堆栈中,是否可以隐藏/折叠没有源代码的堆栈帧,相应地,没有用这些蓝点标记?

仅供参考,Visual Studio可以执行此操作:

在托管代码中,默认情况下."调用堆栈"窗口隐藏非用户代码的信息.出现以下符号而不是隐藏信息:

[<外部代码>]

http://msdn.microsoft.com/en-us/library/a3694ts5.aspx

如果解决方案适用于Delphi XE2,那将会很好.

UPDATE

它可以是一些第三方专家,甚至是使用ToolsAPI的代码

delphi debugging callstack toolsapi delphi-xe2

5
推荐指数
1
解决办法
391
查看次数

bpl delphi专家和dll delphi专家之间的区别是什么

我在delphi IDE专家工作,现在为了避免依赖性问题,我正在考虑重建这个专家作为dll专家,正如在这些答案中提出的那样,现在我的专家(编译为bpl)访问ScreenApplication全局变量(实例) Delphi IDE),所以我想知道如果我编译我的专家作为一个DLL我仍然可以访问这些变量,我也想知道which are the main differences between a bpl delphi expert and a dll delphi expert?

ide delphi delphi-2007 toolsapi

4
推荐指数
1
解决办法
577
查看次数

如何从delphi IDE专家中枚举IDE的形式

我在Delphi的IDE专家工作,我需要通过枚举在Delphi IDE,显示目前我使用的所有形式的Screen.Forms财产,但如果存在另一种方式来做到这一点使用OTA我想知道.因为Screen.Forms当我的专家是BPL时使用唯一的作品,但现在我正在迁移到dll专家.

delphi delphi-2007 toolsapi

4
推荐指数
1
解决办法
660
查看次数

表单中的消息"未找到ToolsAPI"

在一个包中,我有一个实现ToolAPi IOTAIDENotifier接口的组件.包可以设置,编译并显示在调色板上.这个组件的一个方法被设计用于在使用它的项目被编译(并且不被执行)时执行特定的操作...到目前为止,一切都可以.

当我在属于另一个项目的TForm上使用此组件时,问题会出现.当我尝试构建它时,我得到编译器消息File not found:ToolsAPI.dcu.

以下是该软件包的用途:

Uses
  {$IFDEF PACKAGESETUP} DesignIntf, DesignEditors,{$ENDIF}
  Classes, ToolsAPI;
Run Code Online (Sandbox Code Playgroud)

PACKAGESETUP仅在编译bpl时定义

当我双击错误消息时,IDE将打开文件,从该文件中声明对ToolsAPI的引用...如何摆脱此问题?

delphi delphi-2007 toolsapi

4
推荐指数
1
解决办法
1702
查看次数

如何使用Delphi 10.2中的ToolsAPI获取当前项目的版本号

在Delphi 2007中,我可以使用以下ToolsAPI调用轻松获取当前项目的版本信息:

procedure Test;
var
  ProjectOptions: IOTAProjectOptions;
  Project: IOTAProject;
  Major: Variant;
  Minor: Variant;
  Release: Variant;
  Build: Variant;
begin
  // GxOtaGetCurrentProject is a function in GExpert's GX_OTAUtils unit that returns the current IOTAProject
  Project := GxOtaGetCurrentProject;
  if Assigned(Project) then begin
    ProjectOptions := Project.ProjectOptions;
    if Assigned(ProjectOptions) then begin
      Major := ProjectOptions.Values['MajorVersion'];
      Minor := ProjectOptions.Values['MinorVersion'];
      Release := ProjectOptions.Values['Release'];
      Build := ProjectOptions.Values['Build'];
    end;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

在Delphi 10.2.3中,无论实际版本号如何,它都将始终返回版本1.0.0.0.这是"简单"的案例:VCL应用程序.

我还尝试了"Keys"值,它返回一个TStrings指针.在那里我也得到了FileVersion字符串,但它总是"1.0.0.0".

我想这与各种平台和配置的支持有关,但我找不到任何关于它现在应该如何工作的文档.我还搜索了ToolsAPI.pas中的"版本"和"发布",但没有出现任何可疑的内容.

有关如何在Delphi 10.2中获取版本信息的任何提示?

delphi toolsapi otapi delphi-10.2-tokyo

4
推荐指数
1
解决办法
897
查看次数

创建一个简单的Delphi IDE专家

我想为Delphi 7创建一个简单的IDE Expert,如下图所示:

替代文字

我已经验证了这个问题的链接,但OTA Api新闻组已经死了,大部分文档都不可用(断开的链接).有人可以给出一个起点吗?

ide delphi delphi-7 toolsapi

1
推荐指数
1
解决办法
3087
查看次数

如何使用 OpenTools API 检索环境变量的值?

我在 IDE 设置中添加了一些新的环境变量:

工具 > 选项 > 环境选项 > 环境变量 > 用户覆盖

这些只是像一些路径:$(MYPROJ_ROOT)\Source

如何使用 OpenTools API 检索其中之一?

我使用的 IDE 是 Delphi 10.2 Tokyo。

ide delphi toolsapi delphi-10.2-tokyo

0
推荐指数
1
解决办法
84
查看次数