无法以特定名称运行文件

无法以特定名称运行文件

这是一个奇怪的问题。它看起来可能不重要,但既然我遇到了这个问题,我至少想知道它为什么会发生,或者它是否是其他文件中已知的错误。

我有一个屏幕保护程序,只要将其名称设置为其原始名称“Amazing Universe.scr”,它就不会打开。如果我将其重命名为其他名称,即使名称中仍有空格,它也能正常工作。禁用我的防病毒软件也没什么区别,并且无论屏幕保护程序是否设置为默认都无关紧要。我仍然可以配置屏幕保护程序,但除非我更改其名称,否则按“更改屏幕保护程序”设置对话框中的“预览”或双击 Windows 文件夹中的屏幕保护程序都不会执行任何操作。

幸运的是,屏幕保护程序确实创建了一个日志文件 - 但只有当它具有写权限时才会创建,而 Windows 文件夹中没有写权限,将屏幕保护程序移动到其他任何地方也会使其工作。

有人知道为什么会发生这个非常奇怪的问题吗?我在 Windows 7 上从来没有遇到过这个问题,它只在升级到 Windows 10 后才出现,而且屏幕保护程序工作了一段时间,所以可能是更新破坏了它。

编辑通过在提升的命令提示符中运行屏幕保护程序,我能够获取此控制台日志。

19:45:52  [INFO] CD3D9 : Direct3D9 Rendering System created.
19:45:52  [INFO] D3D9: Driver Detection Starts
19:45:52  [INFO] D3D9: Driver Detection Ends
19:45:52  [INFO] D3D9: System Initialization
19:45:52  [ERROR] An exception has been thrown!

-----------------------------------
Details:
-----------------------------------
Error #: 0
Function: CD3D9VideoModeList::item
Description: Invalid videomode index. 
File: .\Source\RenderSystem\engeasy_d3d9videomodelist.cpp
Line: 125

为什么该文件被拒绝访问 DirectX 9 功能?

再次编辑 问题似乎发生在点击“更改屏幕保护程序”界面中的“预览”按钮时。一旦我这样做,屏幕保护程序将永远不会再以相同的文件名运行。但为什么呢?

答案1

好吧,我在这里发布问题后自己解决了这个问题。我已将屏幕保护程序配置为使用 32 位色深,但出于某种原因,它只能使用 16 位。通过重命名文件,我将配置改回原样,因为屏幕保护程序的名称发生了变化,直到我安装屏幕保护程序后,它才会再次设置为 32 位色深。

相关内容