2011-05-02 42 views
4

我目前正在使用C#和快速版本的VS2010编写屏幕保护程序。我创建了一个漂亮的小屏幕保护程序,并将生成的程序集重命名为* .scr扩展名。当组件位于'C: Windows System32'里面时,我得到'无法找到运行该应用程序的运行时版本'

当我将它放置在桌面上并双击它(或从上下文菜单中选择配置)时,它运行良好并显示正确的窗体/屏幕保护程序。然而,当我通过将其放置到C:\Windows\System32文件夹中安装此,我尝试双击它,并得到这个错误:

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

而且它不会从屏幕保护程序的控制面板工作。它在下拉列表中列出,但它不起作用。

任何想法是怎么回事?

+0

不要将程序集复制到此专用Windows目录中。它在64位操作系统上重定向。 – 2011-05-03 00:36:51

+1

这可能就是它!重定向是什么意思?如果不进入'system32'目录,我将如何安装一个屏幕保护程序? – 2011-05-03 16:30:21

回答

5

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

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

相关问题