c # — параллельный доступ к слову

Я иногда сталкиваюсь с проблемами, когда программно работаю с двумя или более документами Word одновременно.

В моем приложении я слушаю кнопки Philips SpeechMike, одна из которых используется для сохранения и закрытия документа Word. Может быть несколько процессов моего приложения (все слушают на кнопках), которые имеют ноль или одно слово документа.

При сохранении различных документов Word из моего соответствующего процесса я столкнулся с COMException, поскольку я попытался включить это параллельное использование:
Из C # со сборками Word Interop:

System.Runtime.InteropServices.COMException (0x800706BA):
Der RPC-Server ist nicht verfügbar. (Ausnahme von HRESULT: 0x800706BA)
bei Microsoft.Office.Interop.Word.Range.get_Start()

(англ .: RPC-сервер недоступен. (Исключение в HRESULT …..)

Из C ++: при вызове saveObject () для IContainer, HRESULT равен 0x80004005 (не указан сбой), и я также испытываю ошибку 0x800706BA верхнего уровня.

Оба метода работают нормально, пока я только вызываю Word последовательно. Поэтому мой вопрос таков: поддерживаются ли одновременные параллельные вызовы для одного экземпляра / процесса Word (но с разными документами), и если да, то нужно ли заранее выполнить настройку? Например. поменять квартиру?

Я прочитал (но больше не могу его найти), что по умолчанию используется модель квартиры STA, и все звонки ставятся в очередь — это означает, что мне не нужно беспокоиться, и все должно работать как есть !?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]