В настоящее время я экспериментирую с Голографическим удаленным взаимодействием и обнаружил, что различные части голографического API, обычно реализуемые Windows, происходят из других мест.
Например, мой HolographicSpace
происходит от Microsoft.Perception.Simulation.dll
, которыйэто библиотека, ссылка на которую приведена выше.
Мне интересно узнать, как это было сделано, поэтому я создал новый компонент C ++ / WinRT и попытался извлечь из Windows.Graphics.Holographic.IHolographicSpace
в моем файле .idl
, ноКомпилятор MIDL выдаст мне это сообщение об ошибке: error MIDL5051: [msg]use of the [exclusiveto] interface is not valid, use the runtimeclass for which this interface is exclusiveto instead
.
Достаточно справедливо, в противном случае, что будет использовать [exclusiveto]
?
Однако остается вопрос: как может внешнийкомпонент делает вид, что реализует тип из пространства имен Windows?Я имею в виду, что теоретически я могу использовать шаблон структуры implements<>
и реализовать все необходимые COM-интерфейсы для моего типа, но это не будет хорошо работать со всей цепочкой инструментов MIDL, поскольку мой код частично сгенерирован из этого.