我正在寻找一种将文件添加到现有目录的方法,该目录具有随机名称作为 Visual Studio 安装项目的一部分,我希望有人能够帮助我解决这个难题。
我一直在尝试使用启动条件获取目录的发现路径属性;不幸的是,此方法返回完整的文件路径,包括文件名,不能用作目录属性。
[AppDataFolder]Company\Product\aaaaaaaaaaaa\
有问题的目录采用aaaaaaaaaaaa
随机安装字符串的形式。
在启动条件设置中,我通过搜索将出现在其中的文件来检查目录是否存在,
搜索目标机器
(Name): File marker
Filename: sample.txt
Folder: [AppDataFolder]Company\Product\
Property: DIRFILE
发射条件
(Name): File marker exists
Condition: DIRFILE
在安装项目中,我添加了我希望插入的文件,以及详细信息
Condition: DIRFILE
Folder: 'Installation folder'
然后在文件系统设置中,我为随机目录添加了一个新文件夹条目aaaaaaaaaaaa
(Name): Installation folder
Condition: DIRFILE
DefaultLocation: [DIRFILE]\..\ *Incorrect*
Property [DIRLOCATION]
正如您所看到的,安装程序检测到标记文件的存在,但是,当使用安装程序时,不是将我的文件放在同一位置,而是[DIRFILE]
错误地尝试将其插入文件中;
这是因为返回了文件路径
[AppDataFolder]Company\Product\aaaaaaaaaaaa\sample.txt
我需要目录路径
[AppDataFolder]Company\Product\aaaaaaaaaaaa
因此,我想知道是否可以从搜索目标机器返回文件所在的目录(而不是文件的文件位置),如果我可以通过对文件名执行字符串替换来提取目录路径文件系统设置中的 DefaultLocation 字段中的文件位置DIRFILE
,或者我什至缺少另一种方法?