2016-08-24 4 views
0

Я написал код, который извлекает текст с нашего сервера и записывает этот текст в документ Word.WinHttpRequest «send» работает над продуктами Office 2007, но не 2013

Мы находимся в процессе модернизации нашего офисного пакета с 2007 по 2013 год, но у меня возникают проблемы при тестировании моего ранее рабочего кода в слове 2013.

я сузили его до http.send линии, это, кажется, ничего не посылает. Когда я запускаю код в пакете 2007, я получаю небольшое ожидание, а затем он переходит к http_OnResponseFinished() Sub, но в 2013 году он не входит в этот подраздел.

URL-адрес правильный, и он выглядит одинаково/возвращает те же данные между наборами 2007 и 2013 годов.

Public Sub Download(Url As String, Optional Async As Boolean = True) 

    Debug.Print "About to download text from url '" & Url & "'." 

    http.Open "GET", Url, True 'http must be opened before it can send the request 

    http.SetRequestHeader "Content-type", "application/json" 

    http.Send 'Sends the request 

' If Wait Then 
'  http.WaitForResponse 
' End If 
End Sub 
Private Sub http_OnResponseFinished() 

    Dim Response As String 

    Response = http.ResponseText 

    WriteTextToWord Response 

    Finished = True 

    Debug.Print "Completed downloading and inserting text, icons and links." 

    If err <> 0 Then 
     Call writeToLog(err.Description) 
    End If 
End Sub 
+0

Вы используете 'Set http = CreateObject (" WinHttp.WinHttpRequest.5.1 ")'? –

ответ

0

Я нашел проблему.

Я использовал прокси-сервер в коде, который по какой-то причине заставил объект http не подключиться к серверам.

Удалив прокси-сервер, я исправил проблему, и поскольку использование этой программы является только внутренним, я думаю, что не использовать прокси-сервер будет okey.