我有一个我刚刚编写的Windows 8应用程序。在过去一年左右的时间里,我偶尔会进行更新。我在大约2个月内没有碰过它。现在,突然间,我收到了错误" 0x800a1391 - JavaScript运行时错误:' WinJS'未定义"当我尝试调试应用程序时。该错误出现在我的default.js文件第5行。
我在源代码管理中有这个应用程序,我尝试将default.js和default.htm文件与我在源代码控制中的内容进行比较(我知道它有效,因为它已经在生产中):它们是相同。我已经尝试正常运行Visual Studio 2013并且无法使用管理员。我已经仔细检查过我在default.htm中正确定义了base.js和ui.js(根据这个问题here)。我还检查了我的WinJS 1.0引用在我的项目中是否正确,并验证了文件是应该在文件系统中的位置。 Intellisense在设计时可以与WinJS对象一起使用。在调试期间,当我查看DOM时,我注意到base.js和ui.js没有加载,但是其他脚本是。这显然是我收到错误的原因。
需要注意的事项:我第一次记得,当我第一次尝试在几个月内进行调试时(如上所述),我收到了一个询问脚本诊断的对话框。我点击并接受了对话框。我不记得曾经被问过这个项目,当然也不是这个项目。这可能与错误有关吗?
我完全不知道如何解决这个问题。我在没有帮助的情况下用谷歌搜索了这个错误。我在SO周围检查也无济于事。任何帮助都将非常受欢迎,因为我确实需要尽快推出修复,如果没有调试能力,我无法测试我的修复。
另一个注意事项:我不认为这应该是一个问题,但在此之前,由于坏扇区错误,我不得不更换我的硬盘。一切都得到了妥善恢复,我还没有看到任何其他问题。这是在大约一个月前在最后一次调试工作和这个问题之间完成的。
编辑:还有一件可能感兴趣的事情......不仅我不能调试这个应用程序,而且其他Windows 8应用程序也将不再运行。 Bing Weather,Pinball FX2和任何其他基于WinJS的应用程序都无法在启动画面中加载和崩溃。非WinJS应用似乎工作正常。所以,现在我认为这可能是WinJS的具体问题。权限可能吗?我已经检查了我无能为力的事情。
答案 0 :(得分:0)
好吧,看起来我已经解决了我自己的问题。这就是我做的......
首先,手动重新安装WinJS:
然后,重新安装VS 2012:nope。
重新安装VS2013:nope。
然后,我尝试将所有应用程序包与完全控制放在我的配置文件夹和程序文件中。这很糟糕,没有做到!
要修复,我尝试在自身上安装Windows 8。没有工作。刷新/重置不会像我先尝试那样工作。
在搞乱权限后,我使用预先保存/备份的ACL文件重启了那些文件夹的所有权限(phew!)。
然后我(因为它已经有一段时间了)运行Windows Update并获得了38次更新。重新启动了几次,然后一切都重新开始了。 (如果权限搞砸了,我只能以管理员身份运行,否则它们将无法运行。)
毕竟,当我尝试调试我的应用程序和其他一些基于WinJS的应用程序时,我开始收到新的错误。在我的应用程序中,错误与状态有关,而不再是它无法找到WinJS文件。我刚卸载它们(包括我的应用程序)并重新安装(存储应用程序)或再次尝试调试,一切正常。
非常混乱的东西,我仍然不知道最初造成这一切的原因。谢谢Kraig的帮助。但是,看起来我现在恢复正常。