Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - ASP и VBScript

Страница:

 

  Вопрос: WebDAV, Копирование сообщения, потеря заголовков Добавлено: 28.02.07 19:26  

Автор вопроса:  Dmitry Stremkouski | Web-сайт: mitroko.com
Здравствуйте, уважаемые специалисты.
Имею проблему с данным модулем.

Дано:
Exchange Server 1, Exchange Server 2, MSXML4, VBScript6
Доступ к сообщениям получаю по WebDAV.

Этот код копирует источник при помощи потока ADO и, затем, полученные данные отправляет вторым запросом на назначение. Использую бинарный поток, без разбора.

Проблема возникает при разборе заголовков сообщения после перемещения.
В местах полей От: и Кому: русские буквы заменяются на вопросительные знаки.

Не могли бы вы мне помочь разобраться, почему так происходит и с чем это может быть связано.

Буду рад любым подсказкам.
Спасибо.

Код модуля:


' **************************************************************************** '
' ---------------------- CopyMsg --------------------------------------------- '
' **************************************************************************** '
Public Function CopyMsg (FromPath, ToPath)
Dim CONN1, CONN2, ASTREAM, MessageIO
Set CONN1 = CreateObject("Msxml2.XMLHTTP")
' Проверка на успешное создание обьекта.
If Err.Number <> 0 Then
    WScript.Echo "Error Creating XML object"    
    WScript.Echo Err.Number & ": " & Err.Description
Else
    Set CONN2 = CreateObject("Msxml2.XMLHTTP")
    ' Проверка на успешное соединение.
    If Err.Number <> 0 Then
        WScript.Echo "Error Creating XML object"
        WScript.Echo Err.Number & ": " & Err.Description
    Else
        ' Открытие двух соединений.
        CONN1.Open "GET", FromPath, FALSE, PMdomain & "\" & PMlogin, PMpassw
        CONN2.Open "PUT", ToPath, FALSE, PMdomain & "\" & PMlogin, PMpassw
        CONN1.SetRequestHeader "Translate","f"
        ' Честно говоря, перепробовал множество значений, но это не повлияло на ход событий.
        CONN1.SetRequestHeader "Charset", "x-ansi"
        CONN1.Send
        CONN2.SetRequestHeader "Destination", ToPath
        CONN2.SetRequestHeader "Charset", "x-ansi"
        CONN2.SetRequestHeader "Translate","f"
        Set ASTREAM = CreateObject("ADODB.Stream")
        If Err.Number <> 0 Then
            WScript.Echo "Error Creating ADODB Stream"
            WScript.Echo Err.Number & ": " & Err.Description
        Else
            ASTREAM.Open
            If Err.Number <> 0 Then
                WScript.Echo "Error Opening ADODB Stream"
                WScript.Echo Err.Number & ": " & Err.Description
            Else
                MessageIO = CONN1.ResponseBody
                ASTREAM.Type = 1 ' Бинарный поток.
                ASTREAM.Write MessageIO
                ASTREAM.Position = 0
                ASTREAM.Type = 1 ' Setting to BinaryType Stream Data
                CONN2.Send ASTREAM
            End If
        End If
        Set ASTREAM = Nothing
    End If
    Set CONN2 = Nothing
End If
Set CONN1 = Nothing
End Function
' ----------------- EOF: CopyMsg --------------------------------------------- '

Ответить

  Ответы Всего ответов: 0  

Нет ответов

Страница:

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам