Почему я не могу скопировать изображения из документа Word с Word 365 с помощью C # VSTO (исключение null ref)? - PullRequest
0 голосов
/ 17 мая 2019

У меня есть программа Word Add-in VSTO, которую я разработал.Одной из функций, выполняемых программой, является проверка каждого абзаца в Word на наличие графики / изображений, и, если он их находит, копирует изображение из абзаца и сохраняет его в папке на компьютере пользователя.

Код, используемый для этого, просто:

image.Range.Copy();

Затем, чтобы получить изображение, которое я использую:

System.Drawing.Image clipboardImage = Clipboard.GetImage(); 

Затем я сохраняю его, используя:

clipboardImage.Save(pathToDirectory);

Это работает без сбоев в более ранних версиях Word, но с 365 (и я думаю, что 2013, хотя и не подтверждено), оно выдает исключение нулевой ссылки при попытке получить изображение с помощью Clipboard.GetImage ();

Кто-нибудь знаетпочему это может быть, пожалуйста?Почему может быть проблема с Word 365 (не версия браузера, а полностью установленная локально).

Ответы [ 2 ]

1 голос
/ 19 мая 2019

В конце концов, это то, что сработало для 365:

image.Range.Select();
image.Application.Selection.Copy();

System.Drawing.Image clipboardImage = null;
if (Clipboard.ContainsImage())
{
     clipboardImage = Clipboard.GetImage();

     //do something with the image on the clipboard
}
0 голосов
/ 17 мая 2019

Как вы упомянули в комментарии, вы используете Visual Studio 2015 с .Net 4.5

Как уже упоминалось здесь , Office 365 будет работать только с Visual Studio 2017 и .Net 4.6.1 (и выше).

...