Нужно ли инициализировать COM перед использованием IStream с GDI+ Bitmap::FromStream()?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Нужно ли инициализировать COM перед использованием IStream с GDI+ Bitmap::FromStream()?

Сообщение Anonymous »

Я использую функцию GDI+ Bitmap::FromStream() для загрузки ресурса PNG, следуя примеру, приведенному в этой статье.
The Bitmap::FromStream( ) функция требует IStream в качестве первого аргумента. Поскольку IStream представляет собой COM-интерфейс, а мои познания в COM-программировании ограничены, хочу уточнить:
  • Нужно ли мне это делать? явно инициализировать COM (например, с помощью CoInitialize) перед созданием или использованием объекта, реализующего IStream, для этой функции?
  • Пример кода, кажется, работает нормально без явной инициализации COM, но я не уверен, что это правильный и надежный подход. Может ли это привести к проблемам при определенных условиях?
Любое понимание того, необходима ли инициализация COM в этом контексте, было бы очень полезно. оценено.

Изменить:
Этот вопрос не является дубликатом.

Изменить:
Этот вопрос не является дубликатом. p>
В другом вопросе приложение выходит из строя без вызова CoInitialize(), и основное внимание уделяется пониманию того, почему это необходимо.
Однако в моем случае приложение работает без явной инициализации COM, и меня беспокоит, безопасно ли это или может ли это привести к проблемам в определенные условия. Мой вопрос требует разъяснений о том, необходима ли явная инициализация COM при использовании интерфейсов COM и о возможных последствиях пропуска инициализации.

Подробнее здесь: https://stackoverflow.com/questions/793 ... fromstream
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»