在VS2010中专门为.net 2.0运行时编译?

在VS2010中专门为.net 2.0运行时编译?,.net,vb.net,.net,Vb.net,我有一堆旧的VB.NET代码,最初是在VS2005上编写的,现在我不再有许可证了。我下载了VS2010免费版,我只想对程序集/DLL应用一个相对较小的补丁。这个特定的DLL正被一个现有的Windows服务(也是用VB.NET编写的)使用,它是TCP远程处理实现的服务器端实现 所以我需要我的补丁代码来兼容所有这些。当我天真地尝试在VS2010下构建时,将DLL放在适当的位置,然后重新启动服务,它会因为一些关于坏幻数之类的错误而退出。(我假设是因为它是.NET3.0,.NET2.0运行时不知道如何处

我有一堆旧的VB.NET代码,最初是在VS2005上编写的,现在我不再有许可证了。我下载了VS2010免费版,我只想对程序集/DLL应用一个相对较小的补丁。这个特定的DLL正被一个现有的Windows服务(也是用VB.NET编写的)使用,它是TCP远程处理实现的服务器端实现

所以我需要我的补丁代码来兼容所有这些。当我天真地尝试在VS2010下构建时,将DLL放在适当的位置,然后重新启动服务,它会因为一些关于坏幻数之类的错误而退出。(我假设是因为它是.NET3.0,.NET2.0运行时不知道如何处理这个问题)

很抱歉这么长的时间,但我希望在VS中有某种方式可以说,‘将其构建为一个.NET2.0程序集’。如果不可能,我的选项是什么?

是的,请转到“我的项目”>“编译”>“高级编译选项”>“目标框架”,然后更改为“.NET Framework 2.0”

如果这样做没有帮助,那么您得到的实际错误是什么?

是的,请转到“我的项目”>“编译”>“高级编译选项”>“目标框架”并更改为“.NET Framework 2.0”


如果这样做没有帮助,那么您得到的实际错误是什么?

对于.NET 3.0程序集,.NET 2.0运行时可以正常工作。有关更多信息,请参见关于的问题(是的,这是一团乱)。不过,您可能使用的库不在2.0框架中。机器上安装的版本是什么?我猜这台机器只有.NET2.0(显然是个问题)!代码没有在3.0中使用任何东西……它都是旧东西,我只是在修补它。我不想在机器上安装3.0,因为我没有为此工作获得报酬…我想尽可能少地让代码重新运行。如果您的代码没有使用3.0/3.5中的任何内容,并且机器安装了2.0,它应该可以工作。你能公布你得到的确切错误吗?它实际上是用4.0编译的(刚刚注意到),当我将运行时切换到使用2.0时,一切都很好。NET 2.0运行时可以使用.NET 3.0程序集。有关更多信息,请参见关于的问题(是的,这是一团乱)。不过,您可能使用的库不在2.0框架中。机器上安装的版本是什么?我猜这台机器只有.NET2.0(显然是个问题)!代码没有在3.0中使用任何东西……它都是旧东西,我只是在修补它。我不想在机器上安装3.0,因为我没有为此工作获得报酬…我想尽可能少地让代码重新运行。如果您的代码没有使用3.0/3.5中的任何内容,并且机器安装了2.0,它应该可以工作。你能公布你得到的确切错误吗?它实际上是用4.0编译的(刚刚注意到)当我将运行时切换到使用2.0时,一切正常。这听起来不错……让我重新编译/部署……如果一切正常,我会将你的答案标记为正确。这听起来不错……让我重新编译/部署……如果一切正常,我会将你的答案标记为正确。