用delphi为asp写dll的问题非熟悉都未入

ttt2 2003-08-22 06:46:47
用delphi建立一个dll都没问题就是不知道如用在作法时如何加进参数(in,out)在asp里老提示类型不对,还有如何作function向asp里传值下面有一个 check的function但在asp里不让调动出刹求求各位高手这个问题困扰了我好久

unit Unit1;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
ComObj, ActiveX, Project1_TLB, StdVcl,ASPTypeLibrary_TLB;

type
Thhh = class(TAutoObject, Ihhh)
private
m_scriptContext:IScriptingContext;
protected

procedure onpageend; safecall;
procedure onpagestart(const unk: IUnknown); safecall;
procedure test(value1: SYSINT); safecall;
function check:olevariant; safecall;
{ Protected declarations }
end;

implementation


uses ComServ ;

function Thhh.check():olevariant;
begin
result:='aaa';
end;

procedure Thhh.onpageend;
begin
m_scriptContext := nil;
end;

procedure Thhh.onpagestart(const unk: IUnknown);
begin
m_scriptContext := unk as IScriptingContext;
end;

procedure Thhh.test(value1: SYSINT);
begin
m_scriptContext.Response.Write(value1);
end;

initialization
TAutoObjectFactory.Create(ComServer, Thhh, Class_hhh,
ciMultiInstance, tmApartment);
end.
...全文
85 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ttt2 2003-08-25
  • 打赏
  • 举报
回复
我已经搞定
fhuibo 2003-08-24
  • 打赏
  • 举报
回复
用ActiveFormX吗?
liumengchuan 2003-08-23
  • 打赏
  • 举报
回复
dll注册了吗?
如果用regsvr32注册的,注意每次更新的时候要重启iis
如果注册为com+,要重新注册
ttt2 2003-08-23
  • 打赏
  • 举报
回复
还是不行在asp里这样调用

<%
set obj=server.createobject("project1.hhh")
obj.method1 "1",a '出错信息是"对象不支持此属性或方法 method1"

%>

为什么在type libary 中不显示method1
liumengchuan 2003-08-22
  • 打赏
  • 举报
回复
用错了
应该用asp对象,而且不要选onpagestart/.....

unit Unit1;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
ComObj, ActiveX, AspTlb, Project1_TLB, StdVcl;

type
Ttest = class(TASPMTSObject, Itest)
protected
procedure Method1(p1: OleVariant; out p2: OleVariant); safecall;
end;

implementation

uses ComServ;

procedure Ttest.Method1(p1: OleVariant; out p2: OleVariant);
begin
// your source
end;

initialization
TAutoObjectFactory.Create(ComServer, Ttest, Class_test,
ciMultiInstance, tmApartment);
end.
ttt2 2003-08-22
  • 打赏
  • 举报
回复
d
ttt2 2003-08-22
  • 打赏
  • 举报
回复
d
关于本书 本书是针对中高级的专业和准专业的程序开发人员而编的。全书共分五篇:第一篇简要介绍了分布式结构及Delphi 6对 它的支持;第二篇讲述了分布式组件的实现,篇中分别讲述了DCOM架构的基元——COM的编程基础,创建DCOM客户端用& 务器应用以及COM十分布式应用的开发;第三篇讲了另一种分布式技术CORBA的原理及实现;第四篇讲多层分布式数据库系 统,从数据库的链接讲起,由浅入深地讲了MIDAS的概念,它的DCOM及CORBA的实现方式,最后深入剖析了它的结构;第五 篇讲了分布式Web技术,包括现在流行的 Web技术及 Internet Express的应用。本书的各个部分,都辅之有详尽的例子, 您会一步步学习构建各种分布式应用程序。相信,在仔细研读和亲手实践了这些程序之后,您一定会成为分布式开发的能 手。由于计算机技术的可操作性很强,所以,在本书的学习过程中,希望读者一定要亲手操作,边看书边实践,这样才会 达到更好的学习效果。 第一篇 分布式结构介绍 第1章 分布式结构与多层应用系统概述 1.1 分布式结构简介 1.1.1 现有的分布式结构 1.1.2 各种分布式结构的比较 1.2 分布式结构的优点 1.3 多层应用系统介绍 1.4 分布式应用的意义 1.5 用delphi进行分布式应用程序的开发 1.5.1 delphi 6支持的分布式组件技术 1.5.2 开发midas应用 1.5.3 开发分布式web技术 第二篇 delphi 6的 comidcom/com十编程 第 2章 delphi 6的 com编程基础 2.1 com的概念及特性 2.1.1 com简介 2.1.2 com的特性 2.1.3 com的优点 2.2 创建com对象 2.2.l 规划com对象 2.2.2 com对象向导 2.2.3 automation对象向导 2.2.4 定义接口 2.2.5 注册com对象 2.2.6 测试com服务程序 2.3 对象接口介绍 2.3.l 接口的作用 2.3.2 接口的语法 2.3.3 iunknown接口 2.3.4 接口的实现 2.3.5 接口的引用 2.3.6 双重接口 2.4 type library的使用 2.4.1 type library编辑器介绍 2.4.2 type librny的基本操作 第3章 com的高级技术 3.1 dll中对象的实现 3.1.l 编dll的一般方法 3.1.2 dll的创建 3.1.3 应用程序的创建 3.2 com接口的实现 3.2.1 tinterfacedobject类的接口实现 3.2.2 tinterfacedobject类的多接口实现 3.3 利用类型库进行com编程 3.3.l typedcomobject类概述 3.3.2 创建dll服务程序 3.3.3 创建客户应用程序 第4章 创建dcom客户端用&务器应用 4.1 dcom系统结构及技术特性 4.1.1 dcom的系统结构 4.1.2 dcom的技术特性 4.1.3 com与dcom的比较 4.2 dcom服务器的创建 4.2.l 创建自动化对象 4.2.2 dcom服务器的安装 4.3 dcom客户程序的创建 第5章 com十分布式应用的开发 5.1 com十系统构架 5.1.1 com十简介 5.1.2 com十的系统构架 5.2 com十组件的开发 5.3 客户应用程序的开发 第三篇 delphi 6的 corba编程 第6章 corba编程基础 6.1 corba技术简介 6.2 coana的基本概念 6.2.1 corba对象 6.2.2 接口定义语言idl 6.2.3 对象请求代理orb 6.2.4 根程序stub和框架程序skeleton 6.3 delphi 6对 corba的支持 6.3.1 visibroker技术 6.3.2 sined agent 6.3.3 corba对象接口的实现 6.4 delphi 6中开发 corba的工具介绍 6.4.1 type librny编辑器 6.4.2 支持coana中的类 6.4.3 corba对象向导 6.4.4 corba数据模块向导 6.4.5 coana clientheerver应用程序 6.5 corba对象向导的使用 6.5.1 解析 corba对象向导 6.5.2 创建corba服务器 6.5.3 创建客户程序 6.6 多线程corba应用的开发 6.6.1 创建支持多线程的corba对象 6.6.2 客户端程序的开发 第7章 高级corba编程 7.1 idl语言基础 7.1.1 一个典型的idl 7.1.2 idl常规术语 7.l.3 idl语法 7.l.4 corba模块 7.2 开发corba高级应用程序 7.3 corba客户端/服务器应用程序向导的使用 7.3.1 idl文件的生成 7.3.2 创建corba服务器 7.3.3 创建corba客户应用程序 第四篇 多层分布式数据库系统midas的开发 第8章 数据库的链接 8.l 数据库的建立 8.2 数据库应用程序的开发步骤 8.3 delphi 6数据库应用开发概述 8.3.1 boriand数据库引擎bde 8.3.2 数据库工具 sql explorer 8.3.3 用bde链接本地数据库的一个简单例子 8. 3. 4 delphi中数据存取总结 8.4 odbc技术 8.4.1 odbc的创建 8.4.2 odbc的概念 8.4.3 odbc解决方案 8.4.4 odbc总体结构 8.5 ado 8.5.1 ado本地数据访问的解决方案 8.5.2 基本的ado编程模型 8.5.3 远程数据访问rds的解决方案 8.5.4 delphi 6中的 tado组件的介绍 8.5.5 一个ado具体的例子 8.6 interbase数据库服务器及ibx组件 8.6.1 inierbase的简要介绍 8.6.2 一个ibx的例子 8.7 多层应用处理数据的一些技巧 8.7.1 数据库链接中的 connection pooling链接技术 8.7.2 多层应用处理数据的原理 8.7.3 处理大型数据集的技巧 第9章 用dcom数据模块来实现基本多层分布式系统 9. l 平滑过渡到h层体系结构 9.2 关于多层应用程序 9·3 delphi 6开发基本多层分布式系统 9.3.1 配置数据库 9.3.2 创建应用服务器 9.3.3 创建客户应用程序 9.4 本地数据库查询操作localquers 9.5 delphi 6开发基本多层分布式系统详解 9.5.1 简单应用服务器程序的具体设置 9.5.2 简单客户端程序的具体设置 第10章 midas的高级应用开发 10.1 在 delphi 6开发 midas三层应用程序 10.1.1 在 delphi 6中创建应用服务器 10.1. 2 在delphi 6中创建客户程序 10.1.3 与应用服务器链接 10.1.4 调用服务器上的接口 10.1.5 在客户端纠错 10. 1.6 更新数据 10.2 midas多层应用程序的开发 10. 2.1 delphi 6中无状态的中间层数据存取 10. 2.2 多层体系结构下的事务 10.2.3 一个基本的midas例子 10.2.4 公文包模式介绍以及具体例子 10.2.5 datapooler技术的例子 10. 3 在 midas中使用 activex 10. 3.1 activex控件开发过程 10.3.2 扩展 activex 10.3.3 注册和安装 10. 3.4 发布 activex 10.3.5 一个 midas的 activexform例子 第11章 用 corba数据模块来实现 midas 11.1 corba数据模块向导介绍 11.2 corba服务器的创建 11.2.1 创建 corba数据模块 11.2.2 添加 corba数据模块组件 11.2.3 运行 coana服务器 11.3 客户程序的创建 11.3.1 程序窗体设计 11.3.2 组件设置 11.3.3 添加代码 11.3.4 运行程序 第五篇 分布式web应用开发 第12章 分布式 web应用开发 12.1 现有 web技术 12.1.1 html技术 12.1.2 javascript技术 12.l.3 asp技术 12.1.4 cgi技术 12.1.5 isapi技术 12.2 用internetexpress开发web分布式应用 12.2.1 delphi 6对传统 web技术的支持 12.2.2 internetexpress工作原理 12.2.3 internetexpress组件介绍 12.2.4 web服务器和 internetexpress的通信 12.2.5 internetexpress实用编程 12.3 开发web服务 12.3.1 web服务概念 12.3.2 web服务协议 12.3.3 web服务应用

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧