Mam aplikację VBA MS Access 2007 działającą w systemie Windows 7. Jedną z kluczowych funkcji jest przesyłanie plików do WebDAV serwer. Poniższy kod działa doskonale na jednym komputerze, ale kończy się niepowodzeniem na innych komputerach (i tak, każdy jest skonfigurowany w ten sam sposób).Załaduj plik ADODB dla Web-DAV "nie można znaleźć żadnych obiektów ani danych zgodnie z nazwą ..."
Oto tłumaczenie translate.google.com komunikatu o błędzie Norwegion, które pojawia się, gdy nie powiedzie się na innych komputerach:
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
To nie działa na tej linii kodu:
objRecord.Open fil, "URL=" & URL, adModeReadWrite, adCreateOverwrite, adDelayFetchStream, sUsername, sPwd
Pełny kod funkcji znajduje się poniżej. To naprawdę po prostu ponowne użycie kodu pod numerem http://social.msdn.microsoft.com/Forums/en-US/isvvba/thread/26b8e905-33d0-438b-98a7-bb69053b931e/. Wszelkie wskazówki będą mile widziane!
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