假设我希望我的 NET 2.0 exe 在 :
- 只安装了 NET 2.0 的 XP
- 仅安装 NET 4.0 的 XP(或未启用 NET 2.0 的 Windows 8)
一个解决方案是创建一个 MyProgram.exe.config 文件,我编写这个实体
<supportedRuntime version="v4.0.30319"/>
<supportedRuntime version="v2.0.50727"/>
可以将这些条目(或 MyProgram.exe.config)嵌入到 exe 中吗? 谢谢。
最佳答案
A .NET .exe
称为 assembly
。除了程序数据之外,它还包含有关程序的元信息,因此 CLR
可以使用它,因此您可以执行诸如 reflection
之类的操作。
你可以在程序集中提供信息,但恐怕你不能那么容易地做你想做的事。您需要让您的 .exe
检查安装的 .NET
版本并最终对其使用react。
此外,您一定不要忘记,在创建程序集时,您指定了 .NET
-targetframework,即 .NET 3.5、.NET 4.0 等……所以 .NET 的程序集由于向下兼容性,2.0 无论如何都将在 .NET 4.0 上运行。
关于c# - 在任何框架中运行 NET 2.0 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15613260/