Развертывание надстройки Outlook - без ресурсов / изображений - PullRequest
0 голосов
/ 07 сентября 2018

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

Моя функция GetImage такова:

    Dim path As String = AppDomain.CurrentDomain.BaseDirectory
    System.Windows.Forms.MessageBox.Show(path)
    path = path.Substring(0, path.LastIndexOf("\bin")) + "\Resources\" + imageName
    Return New Drawing.Bitmap(path)

Причиной сбоя, по-видимому, является то, что AppDomain.CurrentDomain.BaseDirectory имеет значение C:\Users\MZE\AppData\Local\Apps\2.0\4RZKJG5Q.XVT\72NBJ1XY.1QH\andsoon.Поэтому по какой-то причине при публикации изображения не выкладываются как ресурсы.Я добавил их через диалог добавления свойств проекта в Visual Studio.Я также попытался установить сборку для ресурсов и скопировать их в свойствах изображения в Visual Studio.

Буду признателен за любые подсказки.

1 Ответ

0 голосов
/ 13 сентября 2018

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

resource menu

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

project tree

Попробуйте следующую пересмотренную процедуру для вашей функции GetImage. Используйте IntelliSense , чтобы перейти к изображениям в My.Resources.``resourceName. Вам не нужно указывать путь к изображениям.

Public Function GetImage(control As Office.IRibbonControl) As System.Drawing.Bitmap
    Try
        Select Case control.Id
            Case "btnYourButton1"
                Return My.Resources.Image1
            Case "btnYourButton2"
                Return My.Resources.Image2
            Case "btnYourButton3"
                Return My.Resources.Image3
            Case Else
                Return Nothing

        End Select

    Catch ex As Exception
        Return Nothing

    End Try

End Function

Вот справочник Microsoft для объекта Resources.

...