📄 mainform.pas
字号:
unit MainForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids, StdCtrls, MethodsServer_TLB, ComObj, ActiveX;
type
TTest = class(TAutoIntfObject, ITestCallback)
protected
procedure Test; safecall;
end;
TfrmMain = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
btnGetServerTime: TButton;
btnTestCallbacks: TButton;
procedure FormCreate(Sender: TObject);
procedure btnGetServerTimeClick(Sender: TObject);
procedure btnTestCallbacksClick(Sender: TObject);
private
{ Private declarations }
FTest: TTest;
public
{ Public declarations }
end;
var
frmMain: TfrmMain;
implementation
uses DataModule;
{$R *.dfm}
procedure TfrmMain.FormCreate(Sender: TObject);
begin
DM.cdsContacts.Open;
end;
procedure TfrmMain.btnGetServerTimeClick(Sender: TObject);
var
D: TDateTime;
begin
D := DM.SocketConnection1.AppServer.GetServerTime;
ShowMessage(TimeToStr(D));
end;
procedure TfrmMain.btnTestCallbacksClick(Sender: TObject);
var
typelib: ITypeLib;
begin
OleCheck(LoadRegTypeLib(LIBID_MethodsServer, 1, 0, 0, typelib));
FTest := TTest.Create(typelib, ITestCallback);
DM.SocketConnection1.AppServer.SetCallback(FTest as IDispatch);
DM.SocketConnection1.AppServer.TestCallbacks;
end;
procedure TTest.Test;
begin
ShowMessage('In callback');
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -