我正在尝试强制使用 Win8 桌面主题(PresentationFramework.Aero2.dll),但是当我使用 ClickOnce 部署应用程序时,此程序集不会添加到部署中。
我试过设置 CopyToLocal=true - 没有帮助。我试图将它“包含”在 ClickOnce 安装程序中,但它甚至没有出现在列表中。
可以做什么?
我正在尝试强制使用 Win8 桌面主题(PresentationFramework.Aero2.dll),但是当我使用 ClickOnce 部署应用程序时,此程序集不会添加到部署中。
我试过设置 CopyToLocal=true - 没有帮助。我试图将它“包含”在 ClickOnce 安装程序中,但它甚至没有出现在列表中。
可以做什么?
在我的 WPF 应用程序中发生了同样的事情,其中我引用了一个未包含在 ClickOnce 包中的程序集,尽管Include
在项目部署设置中进行了设置。
在我的情况下,程序集是Microsoft.Expression.Drawing.dll
,但我想你的情况是一样的。
我使用一个有点老套的解决方案解决了这个问题:
通过添加一些引用该程序集内的类的代码来创建对该程序集的强引用,例如:
public static class DummyClass
{
public static Microsoft.Windows.Themes.BulletChrome DummyProperty {get;set;}
//BulletChrome is a class defined in PresentationFramework.Aero.dll
}
我确信必须有一个更优雅的解决方案来解决这个问题,但上述方法对我来说效果很好。