var型变量必须是指针类型。讲var S: WideString改为:var S: OleVariant 就行了。
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
             毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
  I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”或者去掉';
I.Desire := '加不加分随你';
—————————————————————————————————
    

解决方案 »

  1.   

    在类型库中设置参数类型为:OleVariant*或者FONTNAME*。前端掉用类型为OleVariant或者WideString。 
    —————————————————————————————————
    MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
                 毁誉由人,望天上云卷云舒,聚散任风。';
    if Not Assigned(I) then
      I := TI.Create(Nil);
    I.Maxim := MaximStr;
    I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”或者去掉';
    I.Desire := '加不加分随你';
    —————————————————————————————————
        
      

  2.   

    procedure TmtsSecurityObj.Test(var A: OleVariant);
    begin
      A := 'aaa';
    end;
    还是不行。实际上,如果是DELPHI编写的客户端,无论是WideString还是OleVariant都是可以的。
    我查询了有关资料,JAVAScript好像没有按地址传递参数的方法。是不是这个原因?
      

  3.   

    procedure  TmtsSecurityObj.Test(var  A:  OleVariant);  
    begin  
       A  :=  'aaa';  
    end;  
    还是不行。  
     
    实际上,如果是DELPHI编写的客户端,无论是WideString还是OleVariant都是可以的。  
    我查询了有关资料,JAVAScript好像没有按地址传递参数的方法。是不是这个原因?
      

  4.   

    ASP的程序我也没有做过,但我参数的调用应该不是pascal的方式procedure TmtsSecurityObj.Test(var S: WideString); stdcall;
    begin
      { 另外你看看它们的地址是不是一样 }
    end;
      

  5.   

    stdcall?
    由DELPHI自动生成的函数不都是safecall的吗?
    我还不清楚在ASP程序中是否可以跟踪呢。
    但是有一点应该是可以确定的了,JavaScript中不允许按地址传递参数,就是说,不管怎样,都只能通过函数返回值了。