我想做一件事情:
做一个COM+,它有一个方法,返回一个对象,这个对象本身又有一些方法。
我是这么写的(当然,不对)type
  TCSDN = class(TMtsAutoObject, ICSDN)
  protected
    function GenerateReturnValue: ReturnValue; safecall; //我想返回一个TReturnValue类型的东西,不知道对不对
  end;  TReturnValue = class(TMtsAutoObject, IReturnValue)
  protected
    Val:String;
    procedure setvalue(const inputvalue: WideString); safecall;
    function getvalue: WideString; safecall;
  end;implementationuses ComServ;function TCSDN.GenerateReturnValue: ReturnValue;
begin
  Result:=TReturnValue.create; 
end;procedure TReturnValue.setvalue(const inputvalue: WideString);
begin
  val:=inputvalue;
end;function TReturnValue.getvalue: WideString;
begin
  Result:=val;
end;现在的问题有几个,第一,我在TypeLibrary里设定GenerateReturnValue的返回值的时候应该怎么设置。我是尝试了很多类型,全说需要指针类型,可是我也是写的指针呀。
第二,象我这么些也不知道对还是不对 。我是在ASP里调用的,大概就想做下面的事情
<%
Set MyObject = Server.CreateObject("CSDN.CSDN")
set M = MyObject.GenerateReturnValue()
call M.setvalue(10)
Response.Write M.getvalue()
%>
真希望最后写出来一个10。可是根本运行不了。
我就不明白了,在Delphi里编译没有问题,但是不让保存,一保存就说需要指针类型。可是也能生成dll文件。为什么呢?说的可能有点乱,我的基础也不好,现在这不是向大家虚心的请教吗,请各位帮我理理头绪,谢谢。