Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 错误:未声明的标识符';TMyClass';_Delphi - Fatal编程技术网

Delphi 错误:未声明的标识符';TMyClass';

Delphi 错误:未声明的标识符';TMyClass';,delphi,Delphi,我正在embarcadero DataSnap中练习代码。 实现以下代码时,我收到错误消息: 错误:第42行上未声明的标识符“TMyClass” 我相当肯定错误存在于: PersistentClass:=TMyClass 感谢您的帮助 unit MyServer; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

我正在embarcadero DataSnap中练习代码。 实现以下代码时,我收到错误消息: 错误:第42行上未声明的标识符“TMyClass” 我相当肯定错误存在于: PersistentClass:=TMyClass

感谢您的帮助

 unit MyServer;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IPPeerServer, Datasnap.DSCommonServer,
  Datasnap.DSTCPServerTransport, Datasnap.DSServer;

type
  TForm1 = class(TForm)
    DSServer1: TDSServer;
    DSServerClass1: TDSServerClass;
    DSTCPServerTransport1: TDSTCPServerTransport;
    procedure DSServerClass1GetClass(DSServerClass: TDSServerClass;
      var PersistentClass: TPersistentClass);
    procedure DSServerClass1CreateInstance(
      DSCreateInstanceEventObject: TDSCreateInstanceEventObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DSServerClass1CreateInstance(
  DSCreateInstanceEventObject: TDSCreateInstanceEventObject);
begin

end;

procedure TForm1.DSServerClass1GetClass(DSServerClass: TDSServerClass;
  var PersistentClass: TPersistentClass);
begin

      PersistentClass := TMyClass;
end;

end.

错误很明显。在使用
TMyClass
时,编译器无法看到具有该名称的符号


很可能您没有声明它,或者在uses子句中省略了声明它的单位

那么,
TMyClass
类是否存在于本单元的范围内?您不能将不存在的内容指定给该参数。在遵循教程时,请注意所有说明,这会很有帮助。参见步骤3,第3点:
对于Delphi,将此单元的名称MyClass添加到服务器应用程序的单元MyServer.pas的uses子句中。
--另请参见: