自己工作机在vc点incredibuild编译时总是显示fail to create process,周围同事却都没问题。这里记下解决的过程。
一、fail to create process
这个错误提示,第一反应就是用户没权限,查看了用户之后,提示这个用户就是管理员。后来各种倒腾都无果。
权限的问题一时没解决,想别的办法……
试出一个办法:点开任务栏右下角的IncrediBuild Agent,右键选择Build->open后打开的Batch Build里编译是完全没有问题的,没有那个创建进程失败的问题。
所以想,是不是因为vc的插件运行时的编译配置有问题,而在Agent独立进程里的Batch Build里的编译配置比较纯净(例如不用搞那个cmake之类的检查)。
于是找到Agent开启Batch Build时的进程为BatchFile.exe,但是在自己写的bat里单独启动BatchFile,启动后弹出Batch Build,选择编译后却也还是创建不了进程错误。
偶然在vc的工具栏的IncrediBuild选项里也发现了Batch Build选项,弹出的Batch Build也是不能创建线程。再次扫兴。
所以想,是不是因为做为vc的插件和bat里启动运行时没有创建进程的权限。而在Agent独立进程里运行时能拿到权限?
最后某此搜什么东西,憋见一个说法,“右键菜单win7管理员身份运行”。如果就特么搞定了。
解决办法大概是:win7启动vc时以管理员身份运行,程序鼠标右键有那个选项。另外也可以看看快捷方式里设置。之后从vc里load你的项目。更方便的是将你的vc程序,打开属性的兼容性标签,特权等级里勾上以管理员身份运行此程序。(设置之后我在TC里不能直接双击启动**.sln,只好右键选择vc来启动)
随后想是不是TotalCommand里起的进程没管理员权限,后来试了试不是这样的……
总结,我的win7用户不是真宗的管理员,虽然控制面板里提示了是!
二、其他问题
有时编译完后不能自动stop build,还得手动点。
这个看看进程管理器里好多僵死的build相关进程,全干掉。