今天在工作过程中,突然有测试的同事给我报来一个问题。她是这么描述的“执行完XXX工具之后,在Start Menu找不到图标了。”
针对问题本身:
1,是执行完XXXX工具之后?
2,Start Menu消失了,那么程序文件是否还在?
3,是Win10 Core的原因吗?
针对这三个假设,我首先研究了Start Menu的机制,发现在Win10上,Start Menu中显示的图标都存在C:\ProgramData\Microsoft\Windows\Start Menu\Programs下面。
后来定位到XXX工具一打开就发现图标不见了,而不是测试同事所说的执行完工具之后。(这一点对帮助我Debug很重要)
针对上面的第3个问题,我分别用不同的Core来进行了验证,发现结果是一样的,这样就排除了Win10 Core的原因。
经过不断的尝试,我注意到了ProgramData这个目录,想起前段时间为了对应一个需求,而将临时文件夹放到了ProgramData下面。
想到这里,我突然觉得今天解决这个问题有望了,沿着这个线索往下找,发现代码中确实有删除临时文件夹的操作,根据条件不同可能会删除掉ProgramData这个目录(因为如果不是在C盘,其他盘的话会创建ProgramData)。
这样就定位了问题,然后修改代码。
重新编译,测试,OK。
真是埋坑啊~~