VS2005+VS2008混装,用VS2005生成的程序无法在装有.Net Framework2.0的机器上运行。

我开发用的电脑是Win2003.装了VS2005和VS2008. 另外还装了个虚拟机(XP的系统)。

我用VS2005写了个程序,把程序移到XP中,运行不起来。双击没有反应,在任务管理器中也看不到进程。后来从任务管理器发现程序实际运行了,但是在0.5S的时间内就自动退出了。

在程序中加日志输出也没用。

再后来,排查出问题点。

我把程序中的如下句子

WaitLogResultSignel.WaitOne(30000);

改为

WaitLogResultSignel.WaitOne(30000,true);

重新生成后,再在XP中就可以正常运行了。

查了一下MSDN,在.NET FRAMEWORK2.0中这个方法没有一个整型参数的重载。这个重载是在.NET FRAMEWORK3.5中才有的。

我就纳闷了,在VS2005中怎么会提示出3.5中才有的方法呢?

VS2008起码是可以自己设定.NET的版本。但是在2005中没有相关设置选项。

有谁知道?恳请指点。

posted @ 2009-08-17 09:47  Aricc  阅读(1001)  评论(0编辑  收藏  举报