1

Я пытаюсь сделать просто следующим:Двойного определение IVsUIShell5

this.GetService(typeof(IVsUIShell5)) 

Но нет никаких шансов иметь услугу, как я получил эту ошибку:

Embedded interop type 'Microsoft.VisualStudio.Shell.Interop.IVsUIShell5' is defined in both 'Microsoft.VisualStudio.Shell.Interop.11.0' and 'Microsoft.VisualStudio.ReferenceManager.Providers.dll'. Some operations on objects of this type are not supported while debugging. Consider casting this object to type 'dynamic' when debugging or building with the 'Embed Interop Types' property set to false.

Любой идея? Я даже не могу понять эту ошибку.

Вставить типы взаимодействий property is False.

+0

У меня возникла проблема с использованием следующего: с использованием MyIVsUIShell5 = Microsoft.VisualStudio.Shell.Interop.IVsUIShell5; К сожалению, теперь значение, возвращаемое GetService, равно null. Зачем? – ff8mania

ответ

1

Я решил таким образом.

using IVsUIShell5 = Microsoft.VisualStudio.Shell.Interop.IVsUIShell5; 
...... 
IVsUIShell5 shell5 = (IVsUIShell5)this.GetService(typeof(IVsUIShell)); 

Надеюсь, это поможет!