前帖主要问,framework 3.5的写的程序(VS2008 ,目标框架为framework 3.5),未使用任何超出2.0的特性,编译成EXE后,直接拷贝到只安装了framework 2.0的机器上,能不能运行。很多朋友都说必须在Vs2008 中,目标框架改为2.0后重新编译,才能运行。    结果我试了一下,不用重新编译,完全可以直接运行。甚至我的源代码中,这样的语句并没有删除:using System.Linq;目标框架为3.5,编译生成EXE,拷贝到只安装了VS 2005的电脑,双击可以运行。另外,进入安装VS 2005电脑的 microsoft.NET 文件夹,确认该电脑未安装3.0或3.5的框架。     看来,无论何事还得亲自测试啊

解决方案 »

  1.   

    using System.Linq 
    如果你不使用该名字空间下的类,编译时会被忽略掉的。
      

  2.   

    必须用 ildasm 看看是否真的没引用 3.5 的才算,光拷贝过去不说明问题,如果程序清单中引用了 3.0 3.5 的, 考到2.0的机器能跑才怪呢.
      

  3.   

    同意楼主,不过vs2008再建立项目时可以先.net frameword的,