【问题标题】:Which entr[ies,y] should I modify in my .csproj file?我应该在 .csproj 文件中修改哪些条目?
【发布时间】:2014-04-29 22:31:15
【问题描述】:

我对不同版本的 Windows CE/CF 应用程序和运行它们的手持设备之间的版本不匹配和不兼容感到困惑和困惑。

我开始意识到我可能将 CF 版本与 .NET 运行时版本混淆了。

在 IDE 中,相关项目的框架版本(只读属性)显示为“v2.0”

对于可以工作的项目(一台设备,安装为 CF 版本 1.0.3316.00,可能是 .NET 运行时版本 1.1),该值为 1.1,而不是 2.0

所以我查看了 .csproj 文件,看看我可能会改变什么来让“v2.0”更改为“v1.1”(无论如何值得一试)。

.csproj 有三个“有趣”的条目:

<SchemaVersion>2.0</SchemaVersion>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<Import Condition="'$(TargetFrameworkVersion)' == 'v3.5'" 

如果我想以 .NET Runtime 版本 1.1 而不是 2.0 为目标,我应该更改哪一个(如果有)?

什么是“架构版本”?

我应该将 TargetFrameworkVersion 更改为 1.1 吗?

我应该更改还是删除“

更新

嗯,通过经验观察已经很明显,“TargetFrameworkVersion”是改变“Framework Version”属性的元素,但是这样做(将其更改为“v1.1”)导致这个:

...所以我似乎处于 Catch-10648 情况 (22 cubed),因为 1.1 版是 .exe 将运行的唯一框架...

我宁愿Catch Bull at 4 或者肯定更早成为Catcher in the Rye,但乞丐不能选择。

【问题讨论】:

    标签: .net compact-framework windows-ce csproj target-framework


    【解决方案1】:

    从来没有 CF 1.1。有 1.0、2.0、3.5 和 3.9。项目文件中唯一重要的是TargetFrameworkVersion。在 Studio '08 下,可以设置为 2.03.5。没有其他任何东西是有效的,因为 VS '08 没有安装其他编译器。如果您必须为 CF 1.0 进行编译(同样,1.1 从未存在过)您必须使用 Studio 2003 或 Studio 2005。

    虽然它与您无关,但为了完整起见,在 VS 2013 中,唯一有效的值是 3.9

    【讨论】:

    • 好的,所以在虚拟丹麦这里肯定有一些东西很烂(无论如何我都接近 Solvang):以前我能够在我的机器上构建和运行 .exes,它有 VS 2008年安装。我从来没有为 CF 1 构建过。现在唯一有效的 .exe 是基于版本 1 的吗?如果我有点疯狂(无论从哪个意义上来说),我都会提到“破坏”这个词
    猜你喜欢
    • 2020-08-17
    • 1970-01-01
    • 2011-03-09
    • 2017-11-23
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多