重装Windows 7之后,今天第一次正式编译WinCE内核,结果又遇到了一点状况,截图如下。
从编译的阶段来看,Sysgen已经成功完成,在执行Post-Sysgen Build的操作时编译PLATFORM\COMMON\SRC\COMMON\CACHE\.\global.c文件出了错,这个错误之前一直没有碰到过——fatal error C1033: cannot open program database ''。
起初怀疑可能是这个目录下的文件被破坏所导致的。于是从Ghost文件中提取出来相应的目录,用工具比较了一下,完全一样。而Ghost之前是用DeviceEmulator验证过的,编译没有任何问题。据此推断跟目录及文件本身没有什么关系。由于之前在WinXP上从没碰到过这个问题,所以怀疑可能还是跟Windows 7有关。
难道是兼容性惹得祸?昨天在设置“以管理员身份运行”时,顺便选了“以兼容模式运行这个程序”,兼容模式选择的是Windows XP( Service Pack 3),如下图所示,这是之前一直使用的系统。
把这个兼容模式去掉,重新编译,果然就好了,虚惊一场,差点就Ghost整个系统了。。。
看来这个兼容模式也不能随便乱用。就像提示中所说,只有在出现问题时才需要考虑兼容性模式。如果已经正常工作了,再选择兼容性模式运行可能反而会有问题。