我們有一個託管的dll實現了從Cpp命名空間中的HwndHost派生的公共參考類。 我們構建了名爲mydll10.dll的x86版本和名爲mydll10_x64.dll的x64版本。 我們在xaml頁面的WPF應用程序中使用Cpp命名空間。我們可以使用'$(平臺)'條件在項目中添加適當的參考。 但是我們應該在x86的xmlns:c =「clr-namespace:Cpp;程序集= UvpProInspectWpf10_x64」x64ns:c =「clr-namespace:Cpp;程序集= UvpProInspectWpf10」的同一頁中使用x64 exe。 在xaml中不可能使用任何#if #then #else。XmlnsDefinition在一個託管的C++ dll
如果CPP的命名空間將是一個C#項目,解決方案可能是在寫
`myurl:"http://schemas.me.com/wpf/"
#if x64
[assembly: XmlnsDefinition(myurl, "UvpProInspectWpf10_x64")]
#else
[assembly: XmlnsDefinition(myurl, "UvpProInspectWpf10")]
#endif
Assembly.cs文件,並在XAML定義
xmlns:c=" http://schemas.me.com/wpf/」
。 我無法找到如何在託管C++項目中執行這些程序集定義。 這可能嗎? 當然,我們可以打破我們的命名規則... 謝謝