delphi程序问题:Class TComPort not found. lgnore the error and continue?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi程序问题:Class TComPort not found. lgnore the error and continue?相关的知识,希望对你有一定的参考价值。
打开delphi的.dpr文件出现下面两个错误,寻求原因及解决办法!
多谢啦
Class TdsStatusBar not found. lgnore the error and continue?
NOTE:lgnoring the error may cause components to be deleted or property values to be lost.
Class TComPort not found. lgnore the error and continue?
NOTE:lgnoring the error may cause components to be deleted or property values to be lost.
dfsstatusbar控件包怎么安装到delphi7里面啊
dfsstatusbar控件包包含下列文件:
DFSKbMon.dpr///dfs.inc///DFSKbMon.dll///DFSStatusBar.txt///DFSStatusBarReg.pas///DFSStatusBar.pas///DFSKb.pas///DFSAbout.pas
主要是需要DFSStatusBar控件,我的操作是:component→install component→选的DFSStatusBar.pas→OK→install
然后就报错了:File not found :'DsgnIntf.dcu'
我在网上搜了,好像是delphi5以后的版本里没有这个东西了,应该怎么办啊?多谢
如果你那有短信收发的程序给我一个吧 这样就最好啦,我用的TC35I模块,用delphi写串口来收发短信
出现这个错误是由于多个类(这里是控件)丢失所致,我给您翻译一下错误信息吧:
Class TComPort not found. lgnore the error and continue?
无法找到类TComPort,忽略这个错误并继续?
Class TdsStatusBar not found. lgnore the error and continue?
无法找到类TdsStatusBar,忽略这个错误并继续?
NOTE:lgnoring the error may cause components to be deleted or property values to be lost.
注意:忽略这个错误可能导致组件被删除或属性值丢失。
Class TComPort not found. lgnore the error and continue?
无法找到类TComPort,忽略这个错误并继续?
NOTE:lgnoring the error may cause components to be deleted or property values to be lost.
注意:忽略这个错误可能导致组件被删除或属性值丢失。
因为您说这个程序是可以下载的,我想可能他的源代码中使用了一些自定义控件,或者您的Delphi安装不完整,或者是他给出的源代码中缺少这两个类。您可以到您下载这个代码的网站看一下有没有相应的信息。
如果您还有疑问,您可以补充问题。谢谢。
====================================================
对问题补充的答复:
很抱歉我这里没有您需要的程序。
我也到网上找了一下,这个文件似乎的确只在Delphi 5 中。并且,您的组件安装步骤也没错。
您给出的控件包中的文件列表来看,这个文件包中应该包含了这个组件的源文件(dpr的工程文件和pas的源代码),您可以尝试用Delphi打开这个工程然后重新编译一下试试。
另外我比较感兴趣的是这个DFSStatusBarReg.pas文件,因为文件名中包含了“Reg”这个词(Register),您可以看一下这个文件的内容。
希望对您有帮助。 参考技术A Class TComPort not found. lgnore the error and continue?
无法找到类TComPort,忽略这个错误并继续?
Class TdsStatusBar not found. lgnore the error and continue?
无法找到类TdsStatusBar,忽略这个错误并继续?
NOTE:lgnoring the error may cause components to be deleted or property values to be lost. 参考技术B 去上面找答案
http://www.80diy.com/home/20030817/default.html
Delphi 类的类 class of 用法
http://blog.csdn.net/blue_morning/article/details/8815609
Delphi 类的类 class of 用法
类的类在什么时候使用:
知道父类但需要创建具体的子类时(你不知道子类会是什么)
例如:
一个Delphi Exe程序中项目文件的Application.CreateForm,跟踪下源代码就能明白,Delphi实现了在根本不知道我们会从TForm派生出什么类的情况下,实现了对这个类的创建。
关键:
TComponentClass = class of TComponent;
procedure TApplication.CreateForm(InstanceClass: TComponentClass; var Reference);
begin
Instance := TComponent(InstanceClass.NewInstance);
Instance.Create(Self);
...
end;
关键的代码就是加粗的这两句和类的类声明
本质:
类的类在声明时,说明相应的类及子类会被编译器附加额外的信息(RTTI),以让系统可以找到具体子类的Create和NewInstance地址。应该就是这样。
代价:
额外的RTTI信息会使我们的类占用额外的内存,这是便利的代价。
简单的问题复杂的说明
本来问题已经说明,但还是存在一个问题:我们的代码中什么地方需要使用class of ?我发现这个问题说明起来很复杂,我举个我人个开发使用的例子。在做数据库程序开发时:我先定义一个TTableSet对象,其功能类似DataModule。用于放置TExportTable,TExportTable类其功能类似TDataSet。我定义了它的增、删、改、查等基本操作。TTableSet对象有一个Add方法,大概代码如下:
procedure TTableSet.Add(const AExoprtObjectInfo: record)var
ExprotTable: TExportTable;
begin
ExprotTable := TExportTable.Create(nil)
根据AExoprtObjectInfo的数据内容具体化ExportTable对象以方便复用代码
end;
然后,在具体的业务功能(例如入库单管理)中需要从TExportTable继承一个入库单类
TInStorageBill = class(TExportTable)
一些具体的类属性和方法
覆盖TExportTable的Create方法以创建相应的资源
end;
废话了那么多,问题才终于出现了:“我怎么才能在TTableSet.Add()方法中创建TInStorageBill对象?”或换而言之:“我怎么在在知道父类的情况下创建其不确定的子类?”。 而你们都知道答案了。
以上是关于delphi程序问题:Class TComPort not found. lgnore the error and continue?的主要内容,如果未能解决你的问题,请参考以下文章