如何:取得一个“文件查找”的父目录
如何:取得一个“文件查找”的父目录
你可以设置一个Property为一个文件的父目录。
第一步:定义搜索的根目录
下面的例子中,路径[WindowsFolder]Microsoft.NET被定义为查找的根目录。如果你没有定义根目录,Windows Installer会根据指定的depth属性搜索所有本机硬盘(fixed drives)。
<Property Id="NGEN2DIR"> <DirectorySearch Id="Windows" Path="[WindowsFolder]"> <DirectorySearch Id="MS.NET" Path="Microsoft.NET"> </DirectorySearch> </DirectorySearch> </Property>
第二步:定义要搜索的父目录
在根目录下,定义你希望返回的目录并且设置它的DirectorySearch/@AssignToProperty属性为“yes”。然后你必须定义你需要搜索的文件,并赋予其唯一的Id。
<Property Id="NGEN2DIR"> <DirectorySearch Id="Windows" Path="[WindowsFolder]"> <DirectorySearch Id="MS.NET" Path="Microsoft.NET"> <DirectorySearch Id="Ngen2Dir" Depth="2" AssignToProperty="yes"> <FileSearch Id="Ngen_exe" Name="ngen.exe" MinVersion="2.0.0.0" /> </DirectorySearch> </DirectorySearch> </DirectorySearch> </Property>
In this example,这里,如果ngen.exe的版本比2.0.0.0更新并且在[WindowsFolder]Microsoft.NET下(包括子目录中)唯一,那么它的父目录的完整路径将会被赋值到Id为NGEN2DIR的Property中。