6

Windows 7 で実行されている MS Access 2007 VBA アプリケーションがあります。重要な機能の 1 つは、ファイルを WebDAV サーバーにアップロードすることです。以下のコードは、ある PC では完全に機能しますが、他の PC では失敗します (はい、それぞれが同じように構成されています)。

これは、他の PC でエラーが発生したときに表示される Norwegion エラー メッセージの translate.google.com 翻訳です。

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

次のコード行で失敗します。

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

完全な関数コードは次のとおりです。これは、実際にはhttp://social.msdn.microsoft.com/Forums/en-US/isvvba/thread/26b8e905-33d0-438b-98a7-bb69053b931e/のコードを再利用しただけです。どんなヒントでも大歓迎です!

Function DAVPUT(ByVal URL As String, ByVal fil As String) As Boolean '
    Dim sUsername As String
    Dim sPwd As String
    sUsername = "k@dummy.com"
    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
4

1 に答える 1