小编nev*_*ves的帖子

如何强制Delphi 7加载整个可执行文件?

这几乎是Delphi 2006同一问题的克隆,但我想要一个Delphi 7的解决方案.我也得到外部异常C0000006.是否有可能使Delphi 7加载内存中的所有可执行文件?

delphi delphi-7

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

配置Rational Functional Tester(RFT)以在Hudson/Jenkins中运行

我刚刚安装了哈德森,它运行得很漂亮.它构建,运行JUnit测试以及CheckStyle分析.

我们的下一步是创建安装,安装它,然后在实际安装上运行自动化测试.如果测试失败或者至少以某种方式发布结果,我会希望失败.我认为我们会设置它以便部分定期运行或手动触发.

我们使用InstallAnywhere进行安装,使用IBM Rational Functional Tester进行自动化测试.

所以问题是:有人创建了类似的设置吗?有没有任何插件,教程或其他资源可以帮助我.或者您是否有任何提示或建议.

installation continuous-integration automated-tests hudson rft

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

如何检查打开的表单实例是否来自设计师?

Delphi应用程序检查表单实例是否已经以这种方式打开:

  form := FindWindow(PAnsiChar(FormClassName), nil);
  if form > 0 then
  begin
    SendMessage(form, WM_ACTIVATEAPP, 0, 0);
    Result := True;
  end else
    Result := False
Run Code Online (Sandbox Code Playgroud)

问题是,当表单作为Delphi Designer窗口打开时,它表示表单是打开的.我刚刚失去了一些工作时间,因为当我打开一个表单并单击断点一个方法时,应用程序停止工作:-(

如果在Designer中创建表单类实例,如何使此函数返回false?


答:
opc0de的建议下面给了我一个很好的解决方案,所以我接受他的评论作为答案.我需要更改代码以遍历所有打开的表单.这是世界副本的快乐代码的最终版本:

function VerifyFormIsOpen(formClass: String): Boolean;
var
  windowHndl, windowOld: HWND;
  processId: Cardinal;
begin
  windowOld := 0;
  windowHndl := 0;
  Result := False;
  repeat
    windowHndl :=  Windows.FindWindowEx(0, windowOld,
                                    PAnsiChar(formClass), nil);
    if (windowHndl > 0) then
    begin
      Windows.GetWindowThreadProcessId(windowHndl, processId);
      if processId = Windows.GetCurrentProcessId() then
      begin
        Windows.SendMessage(windowHndl, Messages.WM_ACTIVATEAPP, 0, 0);
        Result := True;
        break;
      end;
    end;
    windowOld …
Run Code Online (Sandbox Code Playgroud)

delphi winapi

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

如何使用命令行编译Delphi 7项目组文件(.bpg)?

我在项目组中分组了很多项目.所有信息都在project.bpg中.现在我想自动构建它们.

如何使用命令行构建所有项目?

我还在使用Delphi 7.

delphi continuous-integration build delphi-7

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

如何在Delphi 7中使用MSXML 6.0创建TXML文档?

Delphi 7发布时,MSXML 6.0不存在.是否可以将Delphi的TXML文档配置为使用MSXML 6.0而不是旧版本?

delphi msxml delphi-7 msxml6

3
推荐指数
2
解决办法
3694
查看次数

如何创建 pom.xml 来编译 Jenkins Pipeline 共享库?

Jenkins Pipeline 共享库通常具有以下目录结构:

(root)
+- src                     # Groovy source files
|   +- org
|       +- foo
|           +- Bar.groovy  # for org.foo.Bar class
+- vars
|   +- foo.groovy          # for global 'foo' variable
|   +- foo.txt             # help for 'foo' variable
+- resources               # resource files (external libraries only)
|   +- org
|       +- foo
|           +- bar.json    # static helper data for org.foo.Bar
Run Code Online (Sandbox Code Playgroud)

这些是 grovvy 文件,使用 Jenkins 库中的一些代码。我希望能够使用 maven 编译它们,可能使用GMavenPlus maven 插件,并定义一些 Jenkins 库作为依赖项。

我想然后编译,以便我可以在提交或上传到 Jenkins 之前验证文件。我可能还会在编辑文件时提供更好的代码完成功能。 …

maven jenkins jenkins-pipeline

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

如何在delphi单元测试中使用可视化组件?

正如在视觉应用程序中有时常见的那样,我有一些代码,其中数据在可视组件(TTreeView组件)中维护.我正在重构代码并为逻辑创建单元测试.

我的测试项目中唯一的可视化形式是GUITestRunner.将来我计划在持续集成服务器下将测试作为控制台应用程序运行,所以我没有任何形式.

当我尝试创建没有父级的TTreeView小部件并使用它时,我收到以下错误:

Control '' has no parent window
Run Code Online (Sandbox Code Playgroud)

在我的测试套件SetUp方法上创建小部件并在TearDown中销毁它的最佳方法是什么?是否可以在控制台应用程序中使用可视窗口小部件?我不需要显示它,甚至不需要处理事件.我只需要创建子节点并访问数据.

我设法让它与一个丑陋的黑客一起工作,但我想知道是否有一些标准的做法.

当然,在我阳光明媚和遥远的未来,我将重构这个2.1万行格式的代码,我的所有数据都将处于漂亮的数据结构中,并且这些测试不是必需的,但现在我需要它.

delphi unit-testing dunit delphi-7

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

Clearcase:如何复制/分叉文件?

在 Clearcase 中,我想复制(分叉、拆分)一个文件,同时保留其历史记录。类似的东西svn cp old.txt new.txt。我该怎么做?

clearcase

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

在詹金斯管道并行阶段中,如果一个阶段失败,如何迅速杀死其他阶段?

如果工作失败,我不必等待所有人完成。是否可以中止仍在运行的并行阶段。它们必须显示为“已终止”,而不是带有红色十字图标,因为必须突出显示失败的图标。

jenkins jenkins-pipeline

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

Seaborn:如何绘制一条与累积 KDE 中的特定 y 值相匹配的垂直线?

我正在使用 Seaborn 绘制累积分布,它是使用以下代码的 KDE:

sns.distplot(values, bins=20, 
             hist_kws= {'cumulative': True}, 
             kde_kws= {'cumulative': True} )
Run Code Online (Sandbox Code Playgroud)

这给了我下面的图表:

累积分布和 kde

我想绘制一条垂直线和相应的 x 索引,其中 y 为 0.8。就像是:

KDE 带有垂直线

如何获取特定 y 的 x 值?

distribution matplotlib seaborn

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