之前用了一个WebService
webserv_189 my=new webserv_189();
现在改用.dll
<%
Set ASPObj = Server.CreateObject("ServPwd.TServPwd")
ASPObj.Login ("acc_nbr","serv_pwd")
%>
有会的给偶讲讲

解决方案 »

  1.   

    你这还是Asp里的写法。
    在Asp.net里,添加.net/com dll的引用,在***.aspx.cs文件里,直接对类进行new操作即可。
      

  2.   

    可以看看在project中直接加reference引用dll
    如果是c++开发的,可能不能直接reference,需要使用dllimport来加载dll
      

  3.   

    mapserver:这是asp的引用,我现在要.NET引用啊!我已经在注册表中注册了该组件,然后在.NET也引用中也添加了,下步不知道怎么做?
      

  4.   

    gacutil.exe这玩意思偶没有玩过?
      

  5.   

    那就直接using命名空间,就可以使用了
      

  6.   

    // '* ================================================================
    // '*服务名称:LongList
    // '*服务功能:长话清单查询
    // '*主要参数说明:String Phone查询的号码
    // ' String Password:查询的密码
    // '*函数返回值:0失败,1成功,2 网络异常
    // '================================================================
    [WebMethod]
    public string Check189(string Phone,string Password)
    {

    string constr=ConfigurationSettings.AppSettings["SqlConn"];
    SqlConnection mycon=new SqlConnection(constr);
    try
    {
    mycon.Open();
    }
    catch(Exception ex)
    {
    //return ex.Message.ToString();
    return "3";
    }
    SqlCommand cmd=new SqlCommand();
    cmd.Connection=mycon;
    string str,ID="";
    try
    {

    str="insert into Req_OperationProcess(ReqStyle,ReqState,ReqDatetime,RespDatetime) values (1,0,'"+DateTime.Now+"','"+DateTime.Now+"')select @@IDENTITY as ID";
    cmd.CommandText=str;
    ID=cmd.ExecuteScalar().ToString();
    string backstate="0";//验证是否成功;
    string BackValue;
    try

    str="insert into Req_189Authentic (ReqID,PhoneNum,psd189) values ("+ID+",'"+Phone+"','"+Password+"')";
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
                        
    webserv_189 my=new webserv_189();
    BackValue=my.Login(Phone,Password); str="update Req_OperationProcess set ReqState=2 where reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    string[] state=BackValue.Split(new char[]{'|'});
    str="update Req_189Authentic set psdresult="+state[1].ToString()+" where Reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    backstate=state[1].ToString();

    }
    catch(Exception ex)
    {
    str="update Req_189Authentic set psdresult=2 where Reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    str="update Req_OperationProcess set ReqState=3 where reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    Console.WriteLine(ex.Message.ToString());
    return "2";//网络异常
    }

    return backstate;//返回状态;
    }
    catch(Exception ex)
    {
    str="update Req_OperationProcess set ReqState=2 where reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    str="update Req_189Authentic set psdresult=2 where Reqid="+ID;
    cmd.CommandText=str;
    cmd.ExecuteNonQuery();
    Console.WriteLine(ex.Message.ToString());
    return "3";//调用该方法异常
    }
    finally
    {
    mycon.Close();
    }
    }
    这是之前的代码,我现在就是不知道用DLL怎么用啊
      

  7.   

    webserv_189 my=new webserv_189();
    BackValue=my.Login(Phone,Password);
    其实引用应该跟这句差不多吧?
      

  8.   

    写内联代码,在页面顶加入声明,e.g.
    <%@ Import Namespace="ServPwd" %>