Я имею дело с однопоточной библиотекой (не потокобезопасной), которую я хочу обернуть в COM-объект вне процесса, чтобы обойти его поток без безопасности. Мне нужно поведение, при котором каждый новый COM-объект создается в своем собственном процессе - некоторая форма одностороннего процесса без обработки.Внеочередные COM-синглеты
Прошло некоторое время с тех пор, как я имел дело с хардкорным COM, поэтому я не уверен, как подойти к этому, или это вообще возможно без каких-либо обманов.
Спасибо! Я знаю, что процессы дороги, но это единственный способ пойти с этой небезопасной библиотекой. Я понимаю требования STA, но можете ли вы объяснить, как многократные CoCreateInstance() вернут маршалированные пуайнеры для объектов в нескольких процессах? Будет ли каждый вызов порождать новый процесс? – wpfwannabe
Да, REGCLS_SINGLEUSE заставляет создавать новый процесс. Избегайте предполагать, что есть что-то особенное в небезопасной библиотеке, практически все нетривиальные библиотеки небезопасны по потоку. Вот почему STA существует в первую очередь. S и T означают Single Threaded. –