标签: delphi-5

BDE,Windows 7和UAC

我有一个用Delphi 5编写的非常旧的应用程序,在一些使用BDE的客户中运行.现在,一些使用Windows Vista和7的用户已经尝试了多用户访问的一些问题.我认为这些问题与net.and .lck文件的位置有关.所以问题是BDE在Windows Vista和7下配置以避免权限和UAC冲突的正确方法是什么?

delphi uac bde delphi-5

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

从Delphi 5调用WCF

我们有一个非常古老的应用程序.它是重写的块.但由于它非常复杂,重写不断被推迟.

现在我需要知道是否有办法让Delphi 5应用程序调用WCF Web服务?

我知道当Delphi 5发布时,WCF在其发明者的眼中甚至不是一个闪光......但它可以做到吗?如果是这样,怎么样?

delphi wcf delphi-5

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

德尔福的记事本问题

嗨,我们正在使用Delphi 5版本.我们在delphi中打开记事本时遇到问题.我们想要在按钮单击时打开记事本并将数据传递给它,以便记事本可以显示该数据.我不想保存它.请帮我解决这个问题.谢谢.

delphi delphi-5

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

form.show 将焦点设置为底层表单

D5pro。

我有一个主应用程序的子表单,Form1 和 Memo1,用户可以向其中添加文本。

我有一个仅供查看的 FormHelp(包含 MemoHelp.ReadOnly:=True)。

在 Form1 中,可以通过单击 Form1 上的按钮来显示 FormHelp,或者通过设置中的复选框设置自动显示 FormHelp。

Form1.OnShow...
if FormSetup.cbHelp.Checked then
  FormHelp.Show;
Run Code Online (Sandbox Code Playgroud)

或者

Form1.BtnHelpClick(...
  FormHelp.Show;
Run Code Online (Sandbox Code Playgroud)

我想在显示“帮助”窗口后将焦点设置回 Form1 上的 Memo1。

我尝试过 Memo1.SetFocus 但这不起作用。

我尝试使用 WM_SETFOCUS 和 WM_KILLFOCUS但这不起作用

我收到“无法聚焦..”错误,说明 如何在显示表单之前强制将焦点放在组件上

有人可以告诉我如何将焦点放回 Memo1

谢谢。

delphi show delphi-5 setfocus

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

delphi hibernate推送和检测

使用Delphi5.

我有一个以Windows启动开始的应用程序,我想在Hibernate/Wake命令中关闭并启动它.

我需要能够检测它是否从Hibernate回来,所以我每次都可以运行我的应用程序.我在注册表中有一个设置,用户可以选择每天只运行一次.

我猜测有一个Windows消息或注册表项告诉机器它进入并从Hibernate返回.

想法和建议?

谢谢你看这个问题.

delphi hibernate delphi-5

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

当内部单元使用DesignEditors DesignIntf​​时,如何为WIN64构建delphi项目?

我正在尝试将一些代码从Delphi 5迁移到Delphi XE7-WIN64.由于IDE是32位应用程序,因此DesignEditors仅为32位.我正在迁移的项目具有包含DesignEditors或DesignIntf​​或两者的uses子句的单元.

-LUDesignIDE在生成配置>编辑> Delphi编译器>编译>其他选项传递到编译器> -LUDesignIDE

提供以下内容作为构建的第一个错误

[dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found

我使用的是Delphi XE7试用版.

delphi delphi-5 delphi-xe7

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

扩展屏幕上所有MenuItems的事件OnClick来执行另一段代码

我想将一个事件设置为屏幕上的OnClick所有事件,TMenuItems以执行事件当前正在执行的操作,以及另外几行代码。我目前正在使用Delphi 5

例如,假设我有一个TMenuItem代码:

procedure TdesktopForm.MenuFoo1Click(Sender: TObject);
begin
  ShowMessage(TComponent(Sender).Name)
end;
Run Code Online (Sandbox Code Playgroud)

并且我还有以下过程:

procedure TdesktopForm.bar;
begin
  ShowMessage('extra')
end;
Run Code Online (Sandbox Code Playgroud)

而且我想每次单击TMenuItem时,程序都会显示TMenuItem的名称以及“额外”消息。

所示示例仅是我的问题的示例,因为在实际的软件中,我有300多个菜单项,我想按常规进行此操作,因此无需在当前所有菜单单击中添加额外的代码行,也无需添加当我添加新菜单项时。执行的顺序(在菜单单击和额外的代码块之间)无关紧要。

我尝试使用,TActionList但无法检索触发动作的对象,因此无法打印其名称。我尝试使用,ActiveControl但是它总是返回当前聚焦的对象,而不是我单击的实际菜单。而且,TActionexecute事件会覆盖我的TMainMenu.OnClick事件

delphi delphi-5

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

Delphi 5 IDE命令行返回码

我试图使用MSBuild脚本自动化一些传统的Delphi 5版本,并且在捕获错误时遇到问题.考虑到MSBuild传递存在一些问题,我还尝试了一个批处理文件,当构建失败时(1)我仍然收到反向传递(0).%2是delphi的路径,%3是项目名称.

REM delphi_ide_build.bat
@ECHO OFF
"%1 %2\Bin\delphi32.exe" %3.dpr -b

REM BCB5 returns 0 if build succeeds, 1 if build fails
IF ERRORLEVEL 1 GOTO FAIL
IF ERRORLEVEL 0 GOTO PASS

:FAIL
ECHO An Error Occured in Build - Showing Log
ECHO ---------------------------------------
type %3.err
EXIT 1

:PASS
ECHO The Build Passed - Showing Log
ECHO ------------------------------
type %3.err
EXIT 0
Run Code Online (Sandbox Code Playgroud)

根据在线帮助:

成功构建的错误级别设置为0,失败的构建的错误级别设置为1.

目前我的项目失败(在日志文件中可见)但我的批处理文件作为PASS运行.

[致命错误] MyFile.pas(43):找不到档案:'aa.dcu'

这是Delphi 5中的一个错误,还是我错过了什么?


delphi32.exe上选项-B的完整IDE帮助文本:

的AutoBuild.必须与filename选项一起使用.指定后,IDE启动时会自动构建项目或项目组.然后将任何提示,错误或警告保存到文件中.然后IDE退出.这有助于从批处理文件以批处理模式进行构建.成功构建的错误级别设置为0,失败的构建的错误级别设置为1.默认情况下,输出文件的名称与文件扩展名更改为.err时指定的文件名相同.可以使用o选项覆盖它

delphi batch-file delphi-5

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

将货币值设置为NAN,INF或-INF?

我想测试一些代码,以确保它处理NAN,INF-INF输入正确.

我知道存在返回的功能 NAN,INF-INF,但是作为Double:

unit IEEE754;
...
function NAN: Double;
function PositiveInfinity:  Double;
function NegativeInfinity:  Double;
Run Code Online (Sandbox Code Playgroud)

除了在我的情况下,我需要测试a何时Currency是这三个边缘情况值之一.不幸的是,你无法将这些中的任何一个转换为Double:

Test(NAN);

procedure Test(const Value: Currency);
  ...
Run Code Online (Sandbox Code Playgroud)

将a转换为a 时,存在EInvalidOp 无效的浮点运算异常.Double NANCurrency

是否可以指定NAN一个Currency

也许,而不是它是可以指定一个NANCurrency,它是不是没有可能的-我可以忽略这种边缘情况.

我可以忽略这个边缘情况吗?

是否可以"将货币值设置为NAN,INF或-INF?"


{   David Heffernan says it's impossible for a currency to contain INF,-INF or …
Run Code Online (Sandbox Code Playgroud)

delphi nan delphi-5 infinity

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

组件可以用它自己的处理程序替换它的所有者表单的事件(OnClose)吗?

我正在研究一个放在我项目的每个形式上的组件.在运行时,是否可以让组件在其所有者表单的OnClose事件处理程序中包含代码.换句话说,表单将触发它自己的OnClose事件处理程序,但该组件还将包含在所有者表单的OnClose事件上运行的其他事件处理程序代码.(这就是所谓的矢量替换吗?)谢谢.

delphi components delphi-5

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

标签 统计

delphi ×10

delphi-5 ×10

batch-file ×1

bde ×1

components ×1

delphi-xe7 ×1

hibernate ×1

infinity ×1

nan ×1

setfocus ×1

show ×1

uac ×1

wcf ×1