Ti posto il codice del client:
"
Option Explicit
Private rs As ADODB.Recordset
'Modificate la riga seguente con l'URL delle pagine ASP
Private Const RemotePath = "http://localhost/dbremoti/"
Private Sub cmdRequery_Click()
Set rs = New ADODB.Recordset
With rs
If .State = adStateOpen Then .Close
.CursorLocation = adUseClient
.Open RemotePath & "query.asp?TableName=Address"
End With
If rs.Fields(0).Name = "Type" And rs.Fields(0).Value = "##Error##" Then
MsgBox rs("Description") & vbCrLf & "Codice: " & rs("Code"), vbCritical, rs("Source")
Else
Set DataGrid1.DataSource = rs
End If
'rs.Close
End Sub
Private Sub cmdUpdate_Click()
Dim stm As ADODB.Stream
Dim xml As MSXML.XMLHTTPRequest
Set xml = New MSXML.XMLHTTPRequest
Set stm = New ADODB.Stream
rs.Save stm, adPersistXML
xml.Open "POST", RemotePath & "Update.asp", False
xml.send stm.ReadText
If xml.responseText <> "" Then MsgBox Right(xml.responseText, Len(xml.responseText) - InStr(xml.responseText, vbCrLf) - 1), vbCritical, Left(xml.responseText, InStr(xml.responseText, vbCrLf) - 1)
End Sub
Private Sub Form_Load()
Call cmdRequery_Click
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Set rs = Nothing
End Sub
"
... e quelli dele pagine ASP
"query.asp"
<%
Dim rs
Dim stm
Dim conn
On Error Resume Next
Set rs = Server.CreateObject("ADODB.Recordset")
Set stm = Server.CreateObject("ADODB.Stream")
Set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("example.mdb")
conn.CursorLocation = adUseClient
conn.Open
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM " & Request.QueryString("TableName"), conn , adOpenkeyset, adLockBatchOptimistic
If Err Then
Set rs = Server.CreateObject("ADODB.Recordset")
With rs
If .State = adStateOpen Then .Close
.Fields.Append "Type", adVarChar, 9
.Fields.Append "Source", adVarChar, 50
.Fields.Append "Description", adVarChar, 255
.Fields.Append "Code", adInteger
.Open
.AddNew
.Fields("Type") = "##Error##"
.Fields("Source")= Err.Source
.Fields("Description") = Err.Description
.Fields("Code") = Err.Number
.BatchUpdate
End With
End If
rs.Save stm, adPersistXML
Response.ContentType = "text/xml"
Response.Write stm.ReadText
stm.Close
rs.Close
Set stm = Nothing
Set rs = Nothing
%>
e "update.asp"
<%
Dim rs
Dim stm
Dim conn
On Error Resume Next
Set rs = Server.CreateObject("ADODB.Recordset")
Set stm = Server.CreateObject("ADODB.Stream")
Set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("example.mdb")
conn.CursorLocation = adUseClient
conn.Open
With rs
.CursorLocation = adUseClient
.Open Request
.ActiveConnection = conn
.UpdateBatch
End With
If Err Then
Response.ContentType = "text/xml"
Response.Write Err.Source & vbCrLf & Err.Description & vbCrLf & "Codice: " & Err.Number
End If
stm.Close
rs.Close
Set stm = Nothing
Set rs = Nothing
%>
L'errore si genera nella fase client nella riga evidenziata in rosso .
Io non ho cambiato niente solo la posizione delle pagine e del DB come ho scritto prima... spero ti possa aiutare a darmi una mano....
P.S.: anche "adovbs.inc" è sotto la cartella c:\inetpub\wwwroot\dbremoti .

Rispondi quotando