Сообщество программистов Autodesk в СНГ

ADN Club => Inventor API => Тема начата: d_fedorr от 28-04-2020, 17:16:41

Название: Как обрабатывать stdole.IPictureDisp?
Отправлено: d_fedorr от 28-04-2020, 17:16:41
Всем привет. Использую Apprentice server, у объекта ApprenticeServerDocument есть свойство Thumbnail(картинка детали) типа stdole.IPictureDisp. Я пишу приложение wpf на языке C# и изначально хотел отображать картинку детали и сохранять ее в БД. но поискав в интернете, не нашёл толкового решения ни как преобразовать тип IPictureDisp для хранения, ни способа, как отображать этот объект. Есть ли какие то решения для этих 2х задач?
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: mikazakov от 28-04-2020, 18:57:08
IPictureDisp - это интерфейс-обертка типа IDispatch, его суть раскрывается только при работе на С++ по технологии COM.

Но вам я уже давно приготовил материал как конвертировать IPictureDisp в удобоваримые форматы. Читайте и наслаждайтесь
https://drive.google.com/file/d/1lgwUd89YDt-n37YcWaW4c2uYvvrxkuKp/view
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: mikazakov от 29-04-2020, 19:09:39
Ну что легче стало?
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: d_fedorr от 01-05-2020, 14:21:22
Ну что легче стало?
только сегодня посмотрел ваш ответ. это решение подходит для Window Forms,а  у меня приложение WPF
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: mikazakov от 01-05-2020, 16:16:37
А почему нельзя задействовать System.Drawing.Image ?
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: Александр Ривилис от 01-05-2020, 16:33:58
Ну что легче стало?
только сегодня посмотрел ваш ответ. это решение подходит для Window Forms,а  у меня приложение WPF
Если воспользоваться кодом отсюда, то должно работать и в WPF: https://stackoverflow.com/questions/10147293/how-to-display-windows-metafile
Название: Re: Как обрабатывать stdole.IPictureDisp?
Отправлено: d_fedorr от 01-05-2020, 22:45:48
Спасибо вам за помощь, сделал комбинированное решение