Как преобразовать COM-объект в поток памяти для генерации хеша MD5 в c # - PullRequest
0 голосов
/ 01 февраля 2019

Я работаю над PowerPoint VSTO addIn c # .net 4.5.

Прагматически я получаю доступ к каждому объекту слайда из презентации.Я просто хочу преобразовать этот слайд-объект в поток памяти для создания хеша MD5.

Я создал одну функцию, которая принимает объект и создает строку HASH.Как показано ниже,

 public string getMD5ChecksumOfObject(object obj)
    {
        using (var md5 = MD5.Create())
        {
            MemoryStream stream = new MemoryStream();
            IFormatter formatter = new BinaryFormatter();
            formatter.Serialize(stream, obj);
            return Encoding.Default.GetString(md5.ComputeHash(stream));

        }
    }

Это очень простой код. НО, когда я передаю объект Slide этому методу, он не работает во время сериализации. т.е. COM-объект не помечен как сериализация. Просто это означает, что мы не можем сохранить объект com в потоке.Мне нужен поток этого объекта слайда.так что я могу передать его в хэш MD5 для генерации контрольной суммы

У кого-нибудь есть предложения по этому вопросу?

...