当程序集在'C:\ Windows \ System32'中时,我得到'无法找到运行此应用程序的运行时版本'

时间:2011-05-02 20:39:20

标签: c# .net screensaver

我目前正在使用C#和VS2010的快速版编写屏幕保护程序。我创建了一个漂亮的小屏幕保护程序,并将生成的程序集重命名为* .scr扩展名。

当我将它放在桌面上并双击它(或从上下文菜单中选择configure)时,它运行正常并显示正确的表单/屏幕保护程序。但是,当我安装将其放入C:\Windows\System32文件夹时,我会尝试双击它并收到此错误:

Unable to find a version of the runtime to run this application

屏幕保护控制面板也无法正常工作。它列在下拉列表中但不起作用。

知道发生了什么事吗?

1 个答案:

答案 0 :(得分:5)

问题是屏幕保护程序是为32位cpu编译的。在64位操作系统的%WINDIR%\System32文件夹中只允许64位exes。事实上,我使用的是Windows7 64位。

放置32位屏保的正确位置在%WINDIR%\SysWOW64或使用Visual Studio中的'AnyCPU'选项进行编译,然后您可以安装到%WINDIR%\System32中。