Надстройка для Outlook - Приложение Visual Forms для Windows Forms - Контент управления WebBrowser больше не отображается - PullRequest
0 голосов
/ 03 июля 2019

Мы используем надстройку для Outlook (профиль клиента Visual Basic .NET Framework 4, Office 365 для бизнеса 16.0.11727.20230), который отображает некоторый контент в элементе управления WebBrowser.Я не очень знаком с Visual Basic, потому что кто-то еще создал это дополнение, и он больше не доступен, поэтому прежде всего извините, если я сделал какую-либо основную ошибку.

На самом деле элемент управления должен отображать некоторый контент XML.но чтобы упростить вопрос, я просто пытаюсь отобразить веб-страницу https://www.google.at на данный момент.Отображение содержимого в этом плагине всегда работало, и с момента последнего обновления Windows / Office все, что я получаю, это белый экран без ошибки кода.Если я создаю новое приложение Windows Forms с тем же элементом управления, который работает без Outlook, содержимое отображается без каких-либо проблем (URI и фактический XML), поэтому я предполагаю, что это как-то связано с новыми настройками безопасности Outlook или что-то вроде этого.

Элемент управления использует lib Windows.Forms.WebBrowser, и URL-адрес настроен следующим образом:

 Public Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim url = "https://www.google.at"           
            Call WebBrowser1.Navigate(New System.Uri(url))
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

Я уже понял, что элемент управления отображает мое содержимое, если я включаю настройку, оптимизироватьдля совместимости »в файлах / общих параметрах, но на самом деле мне бы хотелось, чтобы он отображал содержимое без использования этого параметра, потому что я думаю, что в этом нет необходимости.

Еще один способ отображения содержимого - использовать"Microsoft Web Browser "(AxSHDocVw.AxWebBrowser).Этот тоже отображает мой контент, но имеет более старый пользовательский интерфейс, и я не могу понять, как отключить полосы прокрутки с этим.Не знаю, помогает ли эта информация выяснить, почему элемент управления System.Windows.Forms не отображает содержимое.

Спасибо за любую помощь или предложения, как вернуть свой элемент управления для отображения некоторого содержимого внутри.

1 Ответ

0 голосов
/ 03 июля 2019

Элемент управления WebBrowser является управляемой оболочкой для элемента управления ActiveX WebBrowser и использует любую версию элемента управления, установленную на компьютере пользователя.

Элемент управления WebBrowser не может использоваться частично доверенным кодом. Для получения дополнительной информации см. Использование библиотек из частично доверенного кода .

Класс WebBrowser может использоваться только в потоках, настроенных на однопотоковый режим (STA). Чтобы использовать этот класс, убедитесь, что ваш метод Main помечен атрибутом STAThreadAttribute .

...