小弟直接用delphi生成了一个asp文件(本来是想做三层模型的表示层)
可是只要是调用了跟delphi有关的东西(FORM、DBXXX、、、)都会提示不能显示页面!经验证IIS没问题、数据库没问题、生成纯跟delphi无关的asp没问题!
请问是什么原因?是不是在编译的时候要加什么编译开关?请各路高手指点指点!!!!!!

解决方案 »

  1.   

    你想在Web页上显示Form吗?不能直接显示,用ActiveX。
      

  2.   

    activeform的问题?你查查这个论坛把,有很多的解答了。实在不行在提问
      

  3.   

    谢谢两位!!不是的!!数据层、业务层都没问题,只是数据不能在表示层显示出来!
    我是用asp来表示的!但数据显示不出来!
    Response.Write(DataModul1.DataSetTableProducer1.Content);  //出错Response.Write(Form1.Caption);   //出错Response.Write('Show me!');  //没问题
      

  4.   

    ASP中怎么会认的Form1呢,如果用Delphi来编译,肯定是变量未定义:)
    你想show Form1.Caption的话,写一个组件,暴露一个接口函数,函数的返回值是字符串,然后在函数中返回你的Form1.Caption。
    顺便问一句,你的ASP和你的Form是什么关系??
      

  5.   

    是用DELPHI来编译的。File->New->ActiveX->Active Server Object(已创建了Active Library),然后在Project1的tlb编辑器里的ITestAsp接口下面新建了一个方法ShowPage
    我想这样的接口已经够暴露了吧!!:)//ShowPage//Asp页不能显示出来;
    procedure TMyTest.ShowPage;
    begin
      //注:数据库正常、业务层访问正常。
      Response.Write(DataModul1.DataSetTableProducer1.Content);  
    end;//Asp页可以显示出来;
    procedure TMyTest.ShowPage;
    begin
      Response.Write('DataModul1.DataSetTableProducer1.Content');  
    end;请问老大,这是什么原因???
    我在d5、d6里都试过了,都是不行!!
    难道我的机器不想干这个?????
    :(
      

  6.   

    用Delphi写ASP啊,这个不会,我一直是写COM+组件,然后用FrontPage之类的写ASP调用。
      

  7.   

    新建ActiveX Library,然后新建Transactional Object,定义一个函数
    function helloworld:OleVariant;
    begin
      result := 'Hello World!';
    end;
    注册到组件服务中
    ASP中:
    <%
    set MyInterface = createobject("组件服务中的组件名")
    aa = MyInterface.helloworld
    set MyInterface = nothing
    Response.Write aa
    %>
    没有测试,大概就是这个意思。