Запуск в .NET COMException с MS Office Interop - PullRequest
0 голосов
/ 16 февраля 2010

Я пытаюсь работать с буфером обмена Windows и Office Interop в веб-приложении ASP.NET.

Все хорошо работает на моей локальной машине под управлением XP (сначала я создал приложение Windows, которое отлично работало на локальной машине). Затем я выполнил его на сервере под управлением Windows Server 2003, и он также работал там.

Затем я сделал пример проекта ASP.NET, и он работал на моей локальной машине. Однако, когда в этот раз я развернул его на сервере, после того, как мне ударили по голове разрешениями, он начал давать мне это исключение, которое я понятия не имею, почему это делает:

System.Runtime.InteropServices.COMException (0x80048240): 
Shapes (unknown member): Invalid request. Clipboard is empty or 
contains data which may not be pasted here. 
at Microsoft.Office.Interop.PowerPoint.Shapes.Paste()

Проблема с какими-либо разрешениями снова в буфере обмена? Если да, как я могу предоставить соответствующие разрешения?

Мне нужно скопировать точную диаграмму, и я просто использую пример с веб-сайта MSDN.

1 Ответ

0 голосов
/ 16 февраля 2010

Это длинный выстрел, но в этой статье о использовании класса Clipboard в ASP.NET говорится, что вам может потребоваться вручную изменить ApartmentState для активного потока на STA чтобы иметь возможность использовать буфер обмена в ASP.NET.

В Stackoverflow есть несколько вопросов на эту тему:

...