我希望WiX在卸载时删除AppData文件夹,所以我查看了RemoveFolderEx,并按照一些帖子/指南来了解如何使其正常工作。 据我所知,我的实现应该有效,但事实并非如此。 我正在使用以下内容:
<Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="AppDataFolder"> <Directory Id="PRIVATEDATAFOLDER" Name="MyApp"/> </Directory> </Directory> <Property Id="PRIVATEDATAFOLDER"> <RegistrySearch Root="HKCU" Key="Software\AppCo\MyApp" Type="raw" Id="APPLICATIONFOLDER_REGSEARCH" Name="PrivateDir" /> </Property> <DirectoryRef Id='PRIVATEDATAFOLDER'> <Component Id="PrivateData" Guid="myGuid"> <CreateFolder Directory="PRIVATEDATAFOLDER"/> <util:RemoveFolderEx Property="PRIVATEDATAFOLDER" On="uninstall"/> <RemoveFolder Id="PRIVATEDATAFOLDER" On="uninstall"/> <RegistryValue Root="HKCU" Key="Software\AppCo\MyApp" Name="PrivateDir" Type="string" Value="[PRIVATEDATAFOLDER]" KeyPath="yes"/> </Component> </DirectoryRef>我在这里做错了吗?
编辑:检查详细日志后,我收到错误:
WixRemoveFoldersEx: 错误0x80070057 :缺少文件夹属性:PRIVATEDATAFOLDER
I wanted WiX to remove the AppData folder when uninstalling, so I looked at RemoveFolderEx and followed a few posts/guides on how to get it working. As far as i can tell, my implementation should work, but it does not. I'm using the following:
<Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="AppDataFolder"> <Directory Id="PRIVATEDATAFOLDER" Name="MyApp"/> </Directory> </Directory> <Property Id="PRIVATEDATAFOLDER"> <RegistrySearch Root="HKCU" Key="Software\AppCo\MyApp" Type="raw" Id="APPLICATIONFOLDER_REGSEARCH" Name="PrivateDir" /> </Property> <DirectoryRef Id='PRIVATEDATAFOLDER'> <Component Id="PrivateData" Guid="myGuid"> <CreateFolder Directory="PRIVATEDATAFOLDER"/> <util:RemoveFolderEx Property="PRIVATEDATAFOLDER" On="uninstall"/> <RemoveFolder Id="PRIVATEDATAFOLDER" On="uninstall"/> <RegistryValue Root="HKCU" Key="Software\AppCo\MyApp" Name="PrivateDir" Type="string" Value="[PRIVATEDATAFOLDER]" KeyPath="yes"/> </Component> </DirectoryRef>Is there something I'm doing wrong here?
EDIT: After checking a verbose log I get the error:
WixRemoveFoldersEx: Error 0x80070057: Missing folder property: PRIVATEDATAFOLDER
最满意答案
在您的日志中,“ 错误0x80070057 :缺少文件夹属性:PRIVATEDATAFOLDER”上面有一个日志行,例如“忽略不允许的属性PRIVATEDATAFOLDER”,如果是这样,您是否尝试将'secure =“yes”'添加到您的PRIVATEDATAFOLDER属性?
In your logs, above the 'Error 0x80070057: Missing folder property: PRIVATEDATAFOLDER' is there a log line such as 'Ignoring disallowed property PRIVATEDATAFOLDER' and if so, have you tried adding 'secure="yes"' to your PRIVATEDATAFOLDER property?
更多推荐
PRIVATEDATAFOLDER,Id,RemoveFolderEx,电脑培训,计算机培训,IT培训"/> <meta name
发布评论