当快捷方式指向的目标被移走了,Windows是怎么寻找被移走的目标的?
当快捷方式被创建时,Windows会给快捷方式指向的目标分配若干个ID,用于识别这个目标。
这些ID,被存储在文件系统中,包括objectidentifier,birthobjectidentifier,birthvolumeidentifier等。
当一个文件被移动时,objectidentifier有可能发生改变,但是birthobjectidentifier和birthvolumeidentifier不会变,正如它们的名字,是在ID被第一次分配时就确定下来的,与生俱来的。
当快捷方式指向的目标被移走了,Windows就是通过这birthobjectidentifier来确定的。
查看一个文件的objectidentifier,可以通过以下命令实现,其中<FileName>就是所要查看ID的对象名称
fsutilobjectidquery<FileName>
比如:
fsutilobjectidqueryD:\Tencent\QQ\Bin\QQ.exe