我有一个用Delphi 5编写的非常旧的应用程序,在一些使用BDE的客户中运行.现在,一些使用Windows Vista和7的用户已经尝试了多用户访问的一些问题.我认为这些问题与net.and .lck文件的位置有关.所以问题是BDE在Windows Vista和7下配置以避免权限和UAC冲突的正确方法是什么?
我们有一个非常古老的应用程序.它是重写的块.但由于它非常复杂,重写不断被推迟.
现在我需要知道是否有办法让Delphi 5应用程序调用WCF Web服务?
我知道当Delphi 5发布时,WCF在其发明者的眼中甚至不是一个闪光......但它可以做到吗?如果是这样,怎么样?
嗨,我们正在使用Delphi 5版本.我们在delphi中打开记事本时遇到问题.我们想要在按钮单击时打开记事本并将数据传递给它,以便记事本可以显示该数据.我不想保存它.请帮我解决这个问题.谢谢.
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
谢谢。
使用Delphi5.
我有一个以Windows启动开始的应用程序,我想在Hibernate/Wake命令中关闭并启动它.
我需要能够检测它是否从Hibernate回来,所以我每次都可以运行我的应用程序.我在注册表中有一个设置,用户可以选择每天只运行一次.
我猜测有一个Windows消息或注册表项告诉机器它进入并从Hibernate返回.
想法和建议?
谢谢你看这个问题.
我正在尝试将一些代码从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试用版.
我想将一个事件设置为屏幕上的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事件
我试图使用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选项覆盖它
我想测试一些代码,以确保它处理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?
也许,而不是它是可以指定一个NAN到Currency,它是不是没有可能的-我可以忽略这种边缘情况.
我可以忽略这个边缘情况吗?
是否可以"将货币值设置为NAN,INF或-INF?"
{ David Heffernan says it's impossible for a currency to contain INF,-INF or …Run Code Online (Sandbox Code Playgroud) 我正在研究一个放在我项目的每个形式上的组件.在运行时,是否可以让组件在其所有者表单的OnClose事件处理程序中包含代码.换句话说,表单将触发它自己的OnClose事件处理程序,但该组件还将包含在所有者表单的OnClose事件上运行的其他事件处理程序代码.(这就是所谓的矢量替换吗?)谢谢.
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