QuickBooksDev Ответов: 1

Программа Windows 7 больше не работает на windows 10 для wordpress/woocommerce API


У нас есть настольная программа VB 2010 (встроенная и развернутая в msi) .Net 4.5, которая уже много лет работает на всех поддерживаемых версиях Windows.

За последние несколько недель он больше не работает корректно на Windows 10, включая наш клиент и нашу систему разработки.

На самом деле он пытается получать заказы от WordPress/WooCommerce API (WP API V1 или V2).

Полученная ошибка такова
Произошла одна или несколько ошибок. При отправке запроса произошла ошибка.

Using client As HttpClient = New HttpClient()
                client.DefaultRequestHeaders.Accept.Add(New MediaTypeWithQualityHeaderValue("application/json"))
                Dim v As Object = Nothing
                If pJSON = NIL Then

                    v = client.GetStringAsync(pURL)
                Else
                    Static myTestSwt As Boolean = False
                    If MyTesting AndAlso TestingDontUpdate Then
                        If Not myTestSwt Then
                            Stop
                            myTestSwt = True
                        End If
                    End If

                    Dim requestMessage = New HttpRequestMessage
                    Dim httpContent As StringContent = New StringContent(pJSON, Encoding.UTF8, "application/json")

                    Dim result As HttpResponseMessage = Nothing ' As Object = Nothing

                    result = client.PutAsync(pURL, httpContent).Result
                    If result.IsSuccessStatusCode Then
                        funRC = True
                        pOutJSON = "{""AaaTeXStatus"": ""OK""}"
                    Else
                        pOutReason = result.StatusCode & Sp & result.ReasonPhrase ' & SP & requestMessage.ToString
                    End If

                    GoTo ExitFunction
                End If

                If v Is Nothing Then
                    GoTo ExitFunction
                End If
                If v.Result Is Nothing Then  ' 401 unauthorized ' should be json
                    GoTo ExitFunction
                End If
                pOutJSON = v.Result  '  json response
            End Using
Catch ex As Exception
            pOutReason = ex.Message
            If ex.InnerException IsNot Nothing Then pOutReason &= Sp & ex.InnerException.Message
 
        End Try


Что я уже пробовал:

В Windows 7 работает с VS 2010 IDE и exe.
На Windows 10 работал с VS 2017 IDE.

Dave Kreskowiak

Не зная сообщений об ошибках, все просто гадают. Это не очень эффективный способ решения проблемы.

Richard Deeming

Отладьте свой код и проверьте полное исключение.

Подсказка: Там часто может быть более одного уровня InnerExceptionс.

1 Ответов

Рейтинг:
1

Tachyonx

Изменение режима совместимости exe-файла в Windows 10 может помочь ...
Его можно найти через свойства exe, на вкладке "Совместимость" ,
- возможно, установка совместимости с Windows 7 решит эту проблему,
BR,