2012-12-21 13 views
6

Ho un'applicazione VBA di MS Access 2007 in esecuzione su Windows 7. Una funzione cruciale è caricare file su un WebDAV server. Il codice seguente funziona perfettamente su un PC, ma non funziona su altri PC (e sì, ognuno è configurato allo stesso modo).Carica file con ADODB per Web-DAV "non trova oggetti o dati secondo il nome ..."

Qui è una traduzione translate.google.com del messaggio di errore Norwegion che si apre quando non riesce sugli altri PC:

Run-time error '-2147217895 (80040e19)': can not find any objects or data in accordance with the name, range or selection criteria within the scope of this operation

Viene a mancare in questa riga di codice:

objRecord.Open fil, "URL=" & URL, adModeReadWrite, adCreateOverwrite, adDelayFetchStream, sUsername, sPwd

Il codice funzione completo è riportato di seguito. È davvero solo riutilizzo del codice a http://social.msdn.microsoft.com/Forums/en-US/isvvba/thread/26b8e905-33d0-438b-98a7-bb69053b931e/. Ogni suggerimento sarebbe molto apprezzato!

Function DAVPUT(ByVal URL As String, ByVal fil As String) As Boolean ' 
    Dim sUsername As String 
    Dim sPwd As String 
    sUsername = "[email protected]" 
    sPwd = "dummy" 

    Dim objRecord As New ADODB.Record 
    Dim objStream As New ADODB.Stream 

    objRecord.Open fil, "URL=" & URL, adModeReadWrite, adCreateOverwrite, adDelayFetchStream, sUsername, sPwd 
    objStream.Type = adTypeBinary 
    objStream.Open objRecord, adModeWrite, adOpenStreamFromRecord 
    objStream.LoadFromFile fil 
    objStream.Flush 
    DoEvents 
    objStream.close 
    objRecord.close 

    DAVPUT = True 

End Function 

risposta

1

This post suggerisce di "confrontare le versioni di MDAC locale e remota". Mi rendo conto che sto offrendo una risposta minima, inesperta, ma poiché non ce ne sono altri, eccola qui.