Windows 8 App was working, now getting 0x800a1391 - JavaScript runtime error: 'WinJS' is undefined

Windows 8 App was working, now getting 0x800a1391 - JavaScript runtime error: 'WinJS' is undefined

我有一个 Windows 8 的应用程序,我之前编写过代码。在过去一年左右的时间里,我一直在进行偶尔的更新。我已经有大约 2 个月没有真正接触过它了。现在,当我尝试调试应用程序时,突然出现错误“0x800a1391 - JavaScript 运行time error: 'WinJS' is undefined”。该错误出现在我的 default.js 文件的第 5 行。

我在源代码管理中有这个应用程序,我尝试将 default.js 和 default.htm 文件与我在源代码管理中的文件进行比较(我知道它有效,因为它已经投入生产):他们是相同的。我已经正常尝试 运行ning Visual Studio 2013 并且作为管理员无济于事。我仔细检查了 base.js 和 ui.js 在 default.htm 中的正确定义(根据这个问题 here)。我还检查了我的 WinJS 1.0 引用在我的项目中是否正确,并验证了文件是否位于文件系统中它们应该位于的位置。 Intellisense 在设计时可以很好地处理 WinJS 对象。在调试期间,当我查看 DOM 时,我注意到 base.js 和 ui.js 未加载,但其他脚本已加载。这显然是我收到错误的原因。

需要注意的事情:这是我记忆中的第一次,当我在几个月内第一次尝试调试时(如上所述),我看到了一个询问脚本诊断的对话框。我单击并接受了对话框。我不记得以前有人问过这个问题,当然也没有针对这个项目。这可能与错误有关吗?

我完全搞不懂这个问题。我在没有帮助的情况下用谷歌搜索了这个错误。我已经检查过 SO 也无济于事。任何帮助将不胜感激,因为我确实需要尽快推出修复程序,但由于无法调试,我无法测试我的修复程序。

另一条注意事项:我不认为这应该是一个问题,但在这开始发生之前,由于坏扇区错误,我不得不更换我的硬盘。一切都已正确恢复,我还没有看到任何其他问题。这是大约一个月前在最后一次调试工作和这个问题之间完成的。

编辑:还有一件可能感兴趣的事情...不仅我不能调试这个应用程序,而且其他Windows 8个应用程序将不再运行 要么。 Bing Weather、Pinball FX2 等应用程序和任何其他基于 WinJS 的应用程序都无法加载并在启动画面期间崩溃。非 WinJS 应用程序似乎工作正常。所以,现在我认为这可能是 WinJS 的特定问题。也许是权限?我已经尽我所能检查无济于事。

嗯,看起来我已经解决了我自己的问题。这是我所做的...


首先,手动重新安装WinJS:不行。

然后,重新安装VS 2012:不行。

重新安装VS2013:不行。

然后,我尝试将具有完全控制权限的所有应用程序包放在我的配置文件文件夹和程序文件中。这很糟糕,不要这样做

为了修复,我尝试在其自身之上安装 Windows 8。没用。 Refresh/Reset 也不起作用,因为我先尝试了这些。

在弄乱权限后,我使用我拥有的 pre-saved/backup 个 ACL 文件(呸!)用 icacls 重置了这些文件夹的所有权限。

然后我(因为已经有一段时间了)运行 Windows 更新并获得了 38 个更新。重新启动几次,然后一切又开始工作了。 (当权限搞砸时,我只能以管理员身份 运行 进行操作,否则它们将无法运行。)

在这一切之后,当我尝试调试我的应用程序和我拥有的其他一些基于 WinJS 的应用程序时,我开始收到新错误。在我的应用程序中,错误与状态有关,不再是找不到 WinJS 文件。我刚刚卸载了它们(包括我的应用程序)并重新安装(商店应用程序)或再次尝试调试,一切正常。

非常混乱的东西,我仍然不知道最初是什么导致了这一切。感谢克雷格的帮助。不过,看来我已经恢复正常了。