第一个单元,是一个带窗体的单元
unit UMain;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
...
implementation{$R *.dfm}
uses
ULobbyServerGen;procedure TFMain.FormCreate(Sender: TObject);
var
  hr:HRESULT;
begin
 hr:=hrInitializeDirectPlay();//***********************
  //if failed(hr) then
end;单元2
unit Unit2;interface
uses
  Windows,DirectPlay8,ActiveX,Dialogs, StdCtrls, SyncObjs,Winsock,SysUtils, Variants;
...
implementationuses
  UMain;
//创建用户
function hrCreatePlayer(pvUserContext: Pointer; pMsgBuffer: Pointer): HRESULT;stdcall;
begin
end;单元2引用单元1,因为单元2需要在单元1的窗体上输出数据;
单元1引用单元2,因为单元1需要用到单元2的函数;
但是单元1 hr:=hrInitializeDirectPlay();//***********************这句话,系统在编译的时候提示没有声明,这是怎么回事,应该如何解决?