Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 芒果控制库-我们是否需要WP70/WP71的不同二进制文件?_Windows Phone 7 - Fatal编程技术网

Windows phone 7 芒果控制库-我们是否需要WP70/WP71的不同二进制文件?

Windows phone 7 芒果控制库-我们是否需要WP70/WP71的不同二进制文件?,windows-phone-7,Windows Phone 7,背景: 我们有一个控制库,并希望发布一个芒果兼容的版本。该库不使用任何特定于Mango的功能 在安装了7.1 SDK之后,我在旧代码中只发现了一个问题,即在ControlTemplate中使用TemplateBinding。其他一切都起作用了 可以为WindowsPhone或WindowsPhone71目标构建库。(二进制)代码几乎相同;唯一重要的区别似乎是目标是在dll文件中硬编码的 现在想象一下安装了控件库并希望在其项目中使用它的开发人员。该项目必须针对7.0或7.1环境。只有当控件库的目标

背景: 我们有一个控制库,并希望发布一个芒果兼容的版本。该库不使用任何特定于Mango的功能

在安装了7.1 SDK之后,我在旧代码中只发现了一个问题,即在ControlTemplate中使用TemplateBinding。其他一切都起作用了

可以为WindowsPhone或WindowsPhone71目标构建库。(二进制)代码几乎相同;唯一重要的区别似乎是目标是在dll文件中硬编码的

现在想象一下安装了控件库并希望在其项目中使用它的开发人员。该项目必须针对7.0或7.1环境。只有当控件库的目标与项目目标兼容时,才会在“添加引用”对话框中显示该控件库。(可以通过手动浏览dll文件来绕过此选项,但这是一个欠标准的解决方案。)


您知道如何生成可用于7.0和7.1目标的单个控件库dll文件吗?

如果它不依赖于Windows Phone Mango功能,那么您可以简单地编译7.0的dll并在7.1项目中重用它。这将是最好的解决办法


尽管它没有在Visual Studio中列出,但对于大多数较旧的库,“浏览”过程是标准的。

如果它不依赖于Windows Phone Mango功能,那么您只需编译7.0的DLL并在7.1项目中重用它。这将是最好的解决办法


尽管Visual Studio中没有列出它,但对于大多数较旧的库,“浏览”过程是标准的。

通过分析SVL Toolkit是如何完成这些工作的,真正的解决方案似乎是编辑注册表项HKLM/Software/Microsoft/Microsoft SDK。如果按下此键,则:

  • Silverlight for Phone/v4.0/AssemblyFoldersEx列出了针对WP7.0的应用程序的程序集

  • Silverlight for WindowsPhone/v4.0/AssemblyFoldersEx列出了针对Mango的应用程序提供的程序集

可以在两个键中引用相同的部件。这似乎覆盖了dll中硬编码的目标


必须进行更多测试,看看是否还有其他警告。

通过分析SVL Toolkit是如何完成这些工作的,真正的解决方案似乎是编辑注册表项HKLM/Software/Microsoft/Microsoft SDK。如果按下此键,则:

  • Silverlight for Phone/v4.0/AssemblyFoldersEx列出了针对WP7.0的应用程序的程序集

  • Silverlight for WindowsPhone/v4.0/AssemblyFoldersEx列出了针对Mango的应用程序提供的程序集

可以在两个键中引用相同的部件。这似乎覆盖了dll中硬编码的目标


必须进行更多测试,看看是否还有其他警告。

我就是这么想的,谢谢。但是“浏览”过程有自己的一系列问题。以更新为例:默认情况下,控件dll与应用程序dll并行复制。大多数程序员在开始使用更新的控件dll时都会遇到问题。即使他们删除了控制dll引用并将引用添加到新的dll中,该项目仍将使用旧的dll。更好的解决方案是将控件dll与WP7.1兼容的地方写入注册表。(就像WP7.0可以做到一样。)但是,我不确定这是否可以做到。我会调查的,谢谢。但是“浏览”过程有自己的一系列问题。以更新为例:默认情况下,控件dll与应用程序dll并行复制。大多数程序员在开始使用更新的控件dll时都会遇到问题。即使他们删除了控制dll引用并将引用添加到新的dll中,该项目仍将使用旧的dll。更好的解决方案是将控件dll与WP7.1兼容的地方写入注册表。(就像WP7.0可以做到一样。)但是,我不确定这是否可以做到。我们将对此进行调查。