Мне не хватает чего-то очевидного. Как вы поместите файл .dll в подкаталог под названием «bin» в каталоге установки? Я пытаюсь следовать этому руководству: http://www.tramontana.co.hu/wix/lesson5.php#5.3 для развертывания веб-службы WCF. Поэтому мне нужно скопировать файлы .svc и .bin, а также несколько других, но только с этими двумя. Я использую Wix 3.5 в Visual Studio.WiX - как создать подкаталог bin?
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="TFBIC.RCT.WCFWebServicesWIXSetup">
<Component Id="ProductComponent" Guid="E9A375FB-DF6A-4806-8B0B-03BE4A50802F">
<File Id='SVC1' Name='CreateUpdateReturnService.svc' DiskId='1' Source='../TFBIC.RCT.WCFWebServices/CreateUpdateReturnService.svc' />
</Component>
</Directory>
<Directory Id="INSTALLLOCATION" Name="TFBIC.RCT.WCFWebServicesWIXSetup">
<Component Id="ProductComponent" Guid="E9A375FB-DF6A-4806-8B0B-03BE4A50802F">
<File Id='DLL1' Name='TFBIC.RCT.WCFWebServices.dll' DiskId='1' Source='../TFBIC.RCT.WCFWebServices/bin/TFBIC.RCT.WCFWebServices.dll' />
</Component>
</Directory>
</Directory>
<Component Id='TestWebVirtualDirComponent' Guid='9586807E-9065-48e8-8E73-13A9191962E5'>
<iis:WebVirtualDir Id='TestWebVirtualDir' Alias='Test' Directory='InstallDir'
WebSite='DefaultWebSite'>
<iis:WebApplication Id='TestWebApplication' Name='Test' />
</iis:WebVirtualDir>
</Component>
</Directory>
Я попытался положить \ Bin на ID и имя атрибута, и это не нравится ни один (неверный символ).
Кроме того, с IIS, лучше всего устанавливать в c: \ program files или в c: \ inetpub \ wwwroot? Как переключить каталог по умолчанию на c: \ inetpub \ wwwroot \ myproj?
Это мои первые первые эксперименты с WiX.
Спасибо, это имеет смысл! Я не думал о вложении элементов. –
NealWalters
Кроме того, если вы хотите иметь пустой каталог, вы можете использовать –
Кроме того, вы можете создавать псевдонимы с альтернативными идентификаторами, добавляя дочерний элемент. Это полезно, если вы создаете повторно используемые компоненты wix под элементом «DirectoryRef», поскольку вы еще не можете знать, в какой папке приложения хотят установить этот компонент. –