惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
V
Visual Studio Blog
罗磊的独立博客
爱范儿
爱范儿
J
Java Code Geeks
博客园 - 司徒正美
N
Netflix TechBlog - Medium
Microsoft Security Blog
Microsoft Security Blog
美团技术团队
小众软件
小众软件
Google DeepMind News
Google DeepMind News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX
博客园 - 聂微东
云风的 BLOG
云风的 BLOG
WordPress大学
WordPress大学
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Jina AI
Jina AI
Y
Y Combinator Blog
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
Martin Fowler
Martin Fowler
Vercel News
Vercel News

博客园 - azhai

sqlserver 实现数据变动触发信息 优化网站 推荐一款UI设计软件Balsamiq Mockups ubuntu 添加公钥 ubuntu 10.10 安装 redmine 收藏常用正则表达式 - azhai - 博客园 ubuntu 10.10 安装步骤 - azhai ubuntu 搭建NAT、DHCP、VPN服务 - azhai ubuntu 10.10 网络连接消失问题解决办法 远程连接mysql超时的解决办法 ubuntu apache2 的负载均衡和反向代理 ubuntu 下的两个项目管理工具 jquery 图片轮询 netbeans 字体美化 windows7 安装 virtualbox和 ubuntu SSL on Ubuntu 8.10 Apache2 博文阅读密码验证 - 博客园 线程加载返回的XMLtoTClientDataSet 用IDHTTP 实现上传和返回XML
delphi 开发扩展(二)
azhai · 2009-11-03 · via 博客园 - azhai

library plug_in;

uses
  SysUtils,
  Classes,
  Unit3 in 'H:\test\Unit3.pas' {Form3};

exports GetForm,GetName;

{$R *.res}

begin
end. 

{要加载的窗体}

unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ADODB, DB, Grids, DBGrids;

type
  TForm3 = class(TForm)
    Button1: TButton;
    ADOQuery1: TADOQuery;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form3: TForm3;
  ADO: TADOConnection;

  function GetName:string;StdCall;
  function GetForm(AHandle:THandle;adoconn:TADOConnection;ACaption:String):BOOL;StdCall;

implementation

{$R *.dfm}

function GetName:string;
begin
  result:='my dll';
end;

function GetForm(AHandle:THandle;adoconn:TADOConnection;ACaption:String):BOOL;
  var
    ShowForm:TForm3;
  begin
    Application.Handle:=AHandle;
    ADO:= adoconn;
    ShowForm :=TForm3.Create(Application);
    try
        if ACaption<>'' then
        ShowForm.Caption:=ACaption;
        ShowForm.ShowModal;
        Result:=False;
    finally  
        ShowForm.Free;
    end;  
  end;

procedure TForm3.Button1Click(Sender: TObject);
begin
  self.ADOQuery1.Connection:=ADO;
  with  self.ADOQuery1 do
  begin
     Connection:=ADO;
     close;
     SQL.Clear;
     SQL.Add('select top 1 * from master');
     open;
  end;
end;

end.