在asp中有一个session.value("me")="aaaaaaaa"
在websnap中的adapter怎么接收?
即在websnap page module中的adapter的adapterfield的ongetvalue事件中如何显示?谢谢各位了!!!

解决方案 »

  1.   

    Asp页代码: <form action="http://localHost/Mydll.dll?PrePayC"   METHOD=POST>
    <p><table>
    <input type=hidden name=" BranchID " value="0755">
    <input type=hidden name="CoNo" value="100001">
    <input type=hidden name="BillNo" value="000023">
    <input type=hidden name="Amount" value="818.66">
    <input type=hidden name="Date" value="19981010">
    <tr>
    <td>定单号<td>000023
    <tr>
    <td>金  额<td>818.66
    <tr>
    <td>日  期<td>19981010
    <tr>
    <td><input type=submit value="提交">
    </table>
    </form>
      

  2.   

    Mydll.dll中的WebSnap代码:With ADOQEveryOne do begin
      close;
      sql.Clear;
      sql.Add(format(vC,[Request.QueryFields.Values['BillNo'],
        Request.QueryFields.Values['Amount'],
        Request.QueryFields.Values['Date']
      ]));
      open;
    end;
      

  3.   

    WebSnap 的 服务端脚本语言是 JSCript,里面一些对象与 ASP 的对象类似
    比如 Session 对象,在 JSCript 中写 Session.Values('Name')
    在 .PAS 文件中 这样写:Session.Values['Name']
    Session 对象的值不需要用 AdapterField 来取,可以直接用上述方法取得
      

  4.   

    多谢各位!
    hiflower(花),我在asp页中使用了如下语句:
    <script language="JScript">
    session.value('me')='asdasdas';
    </script>
    即该session得到一个字符串
    再在websnap中使用webcontext.session.value['me']
    想得到这个字符串但是JScript的语句似乎不是这样写的
    我接触JScript不多,大家能不能帮我一下啊?还有,如果在asp页用<%session.value("me")="asdasdas"%>的话
    websnap就得不到这个session值了
    只能用Jscrip吗?555~
      

  5.   

    上贴中我在asp页中直接用超联接联到dll上,但是没有效果后来又想了个办法:
    在websnap产生的html页中包含有session变量的asp页
    但是在web app debugger中出错了
    :"Error[0]: 'session' 未定义"
      

  6.   

    WebSnap 的服务端脚本 JSCript 中不允许对 session 变量赋值,只允许读取
    session 变量的赋值只能在页模块中进行。对于 ASP (它实际以 VBScript 为脚本)的语句,WebSnap 不能解释,WebSnap 目前只支持 JSCript 的服务端脚本。
      

  7.   

    大概还有一个办法可以:就是当从ASP转到WEBSNAP时,把要传的东东放到COOKIE里,也可以通过URL或POST等方法
      

  8.   

    哎~
    在这上面花的工夫太多了,
    早知道就用一样好了~
    asp+websnap中间出现的问题好多啊
    现在在asp和websnap上都各有一个同名的session
    即两个都用到了session("me")
    但这两者之间却不能传递TO hiflower(花):
       能不能给段现成的JScript代码啊?
       JScript中怎么使用session我找不到
       VBScript在websnap中又解释不了~TO Raptor(猛禽):
       用cookies我也想过
       但是用法好象太复杂了
       如果你有具体的实现方法,发给我看看好吗?
      

  9.   

    我要昏倒了......
    有人告诉我:"jscript 是客户端脚本语言,不支持session"如果在jscript里不能用
    在VBscript里也不支持
    那我就完了~
      

  10.   

    老大,改一下不会吗?<input type=hidden name="BillNo" value="<%session.value("me")="asdasdas"%>">不就把Session里的变量,通过URL,POST到了Websnap了吗?Asp页面用的Session 和Websnap里的Session不是同一个会话,它们的SessinID不一样,里面的变量当然就不一样
      

  11.   

    TO  li3365(步惊云):
    你的asp页俺照抄了 ^^
    在websnop中我是这么写的:procedure Tpage1.FieldGetValue(Sender: TObject; var Value: Variant);
    begin
    value:=request.QueryFields.Values['BillNo'];
    end;但是在dll中没有显示出BillNo的值
    是不是少加了控件?
    还是request不是这么用的?再指点一下吧?
    谢谢~
      

  12.   

    原来不是post,是get呀~
    接受答案了~谢谢大家帮了俺的大忙!!
      

  13.   

    var 
      billNO:string;procedure TPageProducerPage1.WebAppComponentsBeforeDispatch(
      Sender: TObject; Request: TWebRequest; Response: TWebResponse;
      var Handled: Boolean);
    begin
    Billno:=request.QueryFields.Values['BillNo'];
    end;procedure Tpage1.FieldGetValue(Sender: TObject; var Value: Variant);
    begin
    value:=BillNo;end;你再试试
      

  14.   

    vb中可以直接建立asp对象实例,然后就可以按照正常asp写法写isapi了
      我在找delphi中得这种方法,利用activex导入无法实现,真是奇怪
      如果实现我想各位的问题都能解决, 此贴关注中