以前,几个星期前,
我问了一个关于D6和Windows 7的类似问题.
在另一条路径上安装Delphi 6后,它运行良好.
但现在,
从W7升级到Windows 10后,它不再有效.
我被提示注册该软件.
我这样做,并告诉注册成功.
试图重新开始我被告知许可证信息
无效或丢失.
该计划将无法启动.
在Windows 10机器上运行D6需要什么?
Delphi 6.
我
在2011年1月6日@David Heffernan的建议下实现了一个以所有者形式为中心的MessageDlg .
2011年的原始问题在这里: 如何使MessageDlg以所有者形式为中心.
居中对话框有效一次.
在第一次抛出异常之后.
- EAccessViolation
- 地址00000000处的访问冲突
- 读取地址00000000
我可能做错了什么?
function TEthernetNodes_form.CenteredMessageDlg(const Msg: string;
DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons;
HelpCtx: Integer): Integer;
// Open a message Dialog in the center of the owner form
var
Dialog: TForm;
begin
Result := mrNo; // Suppress linker warning
try
Dialog := CreateMessageDialog(Msg, DlgType, Buttons);
try
Self.InsertComponent(Dialog);
Dialog.Position := poOwnerFormCenter;
Result := Dialog.ShowModal
finally
Dialog.Free
end;
except on E: Exception do
begin
AddToActivityLog('Exception in CenteredMsgDlg: [' + …Run Code Online (Sandbox Code Playgroud) Delphi 6附带的Indy版本不包括在打开TCP连接时指定超时的选项.我在另一个问题中被告知Indy 9和10可以做到这一点.
是否可以将Delphi 6升级到Indy 9或10?
到目前为止,我无法找到任何一个下载,同样也找不到升级说明.
任何人都可以帮我解决这个问题吗?
见下面的代码.它是ClientDataSet的AfterOpen事件.
为什么第二个语句不编译?
错误消息是:Undeclared标识符:'LogChanges'
第三个语句编译.
第三个陈述是否正确,相当于第一个陈述?
如果'DataSet'无法使用,为什么会通过?
procedure TCTL_Configurator_form.cdsZonesAfterOpen(DataSet: TDataSet);
begin
cdsZones.LogChanges := FALSE; // This line compiles
DataSet.LogChanges := FALSE; // This line does NOT compile
TClientDataSet(DataSet).LogChanges := FALSE; // This line compiles
end;
Run Code Online (Sandbox Code Playgroud)