题
我使用Alias Manager函数 FSNewAlias(fromFSRef,targetFSRef,& aliasRecordHandle)
创建 AliasRecord
。我的理解是,生成的别名记录将包含相对路径搜索的信息(相对于 fromFSRef
)。由于我的用户位于联网的主目录和移动帐户上,因此这些别名似乎不会将文件的位置保留在联网和移动主目录之间的用户主目录中,因为它们位于不同的卷上。如果原始 fromFSRef
对应于网络帐户中的/Network/.../Users/user/Desktop,我希望能够使用 FSResolveAlias解析别名(newFromFSRef,aliasRecordHandle, & targetFSRef,& changed)
,其中 newFSRef
对应于/ Users / user / Desktop(即移动帐户)。这可能吗?
我采用的解决方案是保留别名记录和相对路径。如果别名解析失败,我会使用相对路径创建新别名。
解决方案
似乎问题中提出的解决方案—持久化别名记录和相对路径是唯一的选择。如果别名解析失败,我们尝试使用相对路径(以及应用程序或用户定义的根)来查找文件。如果成功,我们使用新路径更新别名记录。否则,我们回过头来要求用户找到“丢失”的信息。文件。
不隶属于 StackOverflow