• Codeblocks 等软件 修改源代码后 不能立即执行的解决办法||exe文件删除慢


    不懈地奋斗了两天,终于找到原因了。

    记录如下

    症状:

    Codeblocks 、Visual Studio 都出现此问题:修改源代码 无法立即执行 ,就是:cannot open output file "D:xxxxx......DebugNEW.exe" permission denied!

    一般是因为窗口是关闭了,但是 进程没有完全退出,如果有,那么关闭此进程(new.exe)就行。

    但是问题并不简单。进程里面没有。

    起初我怀疑是权限问题,我去那个目录 发现无法访问执行,无法删除,无法查看权限信息。但是过了大约1分钟,文件自动消失。设置了文件夹和该分区的最高权限,重装了codeblocks N次,问题依旧。

    后来,怀疑是杀毒软件 死磕,用了Unlocker检查有没有被占用,结果没有被占用,用神器(procexp.exe)监测文件访问情况,监视了360 和 ESET的进程,然后又监视了 那个NEW.exe的情况,发现 这个文件 在那一分钟内是

    Deleting Pending(删除挂起  /  删除等待)状态,也就是说系统正要删除它,而且没有发现 访问被拒绝的信息,但是我不明白这一分钟 系统或者软件在对它做什么。

    百度查询无果。

    由于本人没有任何技术基础,只能瞎碰经验,到此已经找不出原因了。

    但是一有空就研究。。。。

    今天发现,卸载软件的时候,我看着某个软件的目录下的文件,发现其他文件已经被删除,而剩下 uninstall.exe(卸载程序的主程序),我以为没有删除干净,当我手动删除的时候发现和我之前编译的程序文件一样,无法访问和执行,也无法删除,无法查看权限信息。

    于是我习惯性的把问题转化为 关键词——exe文件删除慢,然后查到了。

    很容易就找到 问题所在,就是Application Experience服务 被禁用

    我似乎没有动过这个服务,但是之前优化过一些启动项。所以说,不明白的服务项不能随便关闭,否则出现无法意料也不知道原因的疑难杂症,问题很小,但不至于为了这个问题去重做系统。于是我疯狂地找到了这个原因。

    理论的解决方法:

    打开 Application ExperienceProgram Compatibility Assistant Service两个服务(确保这两个服务是处于启动状态)

    具体做法,右键服务项,如果启动是灰色的,选择属性,选择自动,然后确定,然后再右键,就可以启动。

    实际上:

    Application Experience处于手动,不能是禁用就行了、而Program Compatibility Assistant Service服务可以禁用。
  • 相关阅读:
    JAVA List中剔除空元素(null)的方法
    onchange onpropertychange 和 oninput 事件的区别
    window.open()与window.showModuleDialog()
    Eclipse 安装插件(aptana、svn 、git、Java EE、JSHint)
    数字组合 · Combination Sum
    分割回文串 · Palindrome Partitioning
    N皇后问题12 · N-Queens
    全排列12 · Permutations
    Course Schedule课程表12(用Topological Sorting)
    133克隆图 · Clone Graph
  • 原文地址:https://www.cnblogs.com/slankka/p/9158604.html
Copyright © 2020-2023  润新知