edrp.cn的Blog

学习,需要交流,欢迎大家和我共同来学习C#,ASP.NET,MS SQL Server开发Web项目,欢迎大家和我交流

博客园 首页 新随笔 联系 订阅 管理

一、服务端如果出现:

---------------------------
ABServerP.exe - 无法找到入口
---------------------------
无法定位程序输入点 @Abthirddbu@ABOpenFileConnection$qqrp29Abthirddbu@TFireDACConnection27Abpubconstu@TABDatabaseType20System@UnicodeStringt3t3t3 于动态链接库 F:\CFServer\ABServerP.exe 上。 
---------------------------
确定   
---------------------------

需要将三个基础包和ABServerP.exe编译,并上传到服务器,然后运行,同时需要上传至框架库

注:需要将AbserverP目录下面的Config复制过来,此目录保存了界面上DbGrid的列配置信息,否则会提示:

启动服务发生异常:Field '是否运行' cannot be modified

问题出在:

Plugs_DBGrid.GetColumnByFieldName('PL_Run').ReadOnly:=true;
这句,在发版虚拟机和我开发机上都仅设置DBGRID的列ReadOnly属性为True
这句的目的是在DBGRID上不能通过点击来修改PL_Run字段,这个字段是由服务程序根据是否成功加载插件去设置的
但是在CIO你电脑上这句会同时修改字段的ReadOnly属性为True,这样服务程序根据是否成功加载插件去设置时就会报错了,原因在DELPHI源码中
procedure TColumn.SetReadOnly(Value: Boolean);
var
  Grid: TCustomDBGrid;
begin
  Grid := GetGrid;
  if not IsStored and Assigned(Grid) and Grid.Datalink.Active and Assigned(Field) then
    Field.ReadOnly := Value
  else
  begin
    if (cvReadOnly in FAssignedValues) and (Value = FReadOnly) then Exit;
    FReadOnly := Value;
    Include(FAssignedValues, cvReadOnly);
    Changed(False);
  end;
end;

因为CIO你电脑的ABServerP目录中没有Config目录,所以列不是手工创建的了,就走到

 

 

二、客户端出现:

---------------------------
无法定位程序输入点 @Shoeserp_public_selectu@TShoesErp_public_selectForm@ 于动态链接库 D:\ShoesErp\ShoesErp_Sales_SalesOrderG.bpl 上。 
---------------------------
确定   
---------------------------

类似这样的错误,就需要将第三方包重新升级打包,然后上传至框架库,然后客户端重新打开程序即可

posted on 2022-09-06 22:37  edrp.cn  阅读(63)  评论(0编辑  收藏  举报