问题一:我在asp中写了段代码,但转到vb生成DLL组件后却又语法错误,为什么,我是第一次写DLL代码
代码:Sql = "Insert Into House_User("
Sql = Sql + "User_Username,User_Password,User_question,User_Answer,User_Address,User_Company,User_Phone,"
Sql = Sql + "User_Fax,User_Email,User_Post,User_Content,User_Area,User_Success) Values ("
Sql = Sql + "'"&User_Username&"'"
Sql = Sql + ",'"&User_Password&"'"
Sql = Sql + ",'"&User_Question&"'"
Sql = Sql + ",'"&User_Answer&"'"
Sql = Sql + ",'"&User_Address&"'"
Sql = Sql + ",'"&User_Company&"'"
Sql = Sql + ",'"&User_Phone&"'"
Sql = Sql + ",'"&User_FAX&"'"
Sql = Sql + ",'"&User_Email&"'"
Sql = Sql + ",'"&User_Post&"'"
Sql = Sql + ",'"&User_Content&"'"
Sql = Sql + ","&User_Area&""
Sql = Sql + ",0)"问题二:还有一个问题,关于数据库的代码是否可以与DLL分开,比如
asp中Conn.asp
db="database/House_System.mdb"'这里修改数据库路径或名称
Set Conn = Server.CreateObject("ADODB.Connection")
dbpath="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
Conn.Open dbpath
Set Rs=Server.CreateObject("ADODB.RecordSet")在DLL中
Dim Sql,Rs
Sql = "Update House Set aa = bb Where 条件"
Set Rs = Conn.Execute(Sql)高手救命!!疑惑中... ...

解决方案 »

  1.   

    Sql = Sql + "'" & User_Username & "'"
    注意空格。
      

  2.   

    DLL设置一个Conn属性,把ASP文件中的Conn传递到DLL里面使用。Option Explicit'保持属性值的局部变量
    Private mvarConn As Object '局部复制
    Public Property Set conn(ByVal vData As Object)
        Set mvarConn = vData
    End Property
    Public Property Get conn() As Object
        Set conn = mvarConn
    End PropertyPublic Sub aaaa()
        ……
        Set Rs = mvarConn.Execute(Sql)
        ……
    End Sub======================
    asp中用法db="database/House_System.mdb"'这里修改数据库路径或名称
    Set Conn = Server.CreateObject("ADODB.Connection")
    dbpath="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
    Conn.Open dbpathset obj=server.createobject("你的组件工程名.类名")
    set obj.conn=Conn '先将conn对象传递给DLL
    obj.aaaa