我需要计算MSI中文件的相对路径。目前,我正在查询“File”表以获取与文件名对应的组件。接下来,我使用此组件查询组件表并查找目录。接着,我使用这个目录查询目录表并找到目录的父目录。
随后,我继续查询目录表以获取上一个父目录的Parent_Directory,并构建文件路径,直到到达$TARGETDIR。在这里,我只需替换$TARGETDIR的属性值即可获得绝对路径。
我的问题是,由于所有这些都需要在MSI数据库中跨表进行多次查询,因此会有相当大的性能损失。是否存在C ++中的API或VC ++中的库以不同的方式完成此操作?或者微软提供类似(但现成的)的解决方案吗?真的很感谢任何帮助!
谢谢, Shankha
随后,我继续查询目录表以获取上一个父目录的Parent_Directory,并构建文件路径,直到到达$TARGETDIR。在这里,我只需替换$TARGETDIR的属性值即可获得绝对路径。
我的问题是,由于所有这些都需要在MSI数据库中跨表进行多次查询,因此会有相当大的性能损失。是否存在C ++中的API或VC ++中的库以不同的方式完成此操作?或者微软提供类似(但现成的)的解决方案吗?真的很感谢任何帮助!
谢谢, Shankha