0
WIX (v3.5) 설치 프로그램에서 XmlFile 요소를 사용하여 설치중인 web.config에서 연결 문자열을 업데이트하려고합니다. 하지만 다음과 같은 오류가 발생합니다.XmlFile 요소에 "유효한 외부 키가 아닙니다"오류가 발생했습니다.
유효하지 않은 외부 키. 테이블 : XMLFILE, 열 : 파일, 키 (들) : UpdateConnectionString
의 Web.config 구성 요소 및 파일 요소는 열을 이용하여 수확하는 .wxs에 있습니다. 여기
<Component Id="Web.config" Guid="{E66D901B-8140-4162-96F3-8A29253659FE}">
<File Id="Web.config" KeyPath="yes" Source="$(var.WEBSOURCEFOLDER)\Web.config" />
</Component>
내가 "Site.Feature.wxs"여기
<Directory Id="SiteRoot" Name="SiteRoot">
...
<Component Id="WebConfigChanges" Guid="{A242616E-5515-4E77-8CB3-361A449118A4}" >
<RegistryValue Id="WebConfigChanged" Root="HKLM" Key="SOFTWARE\CompanyName\ProductName" Name="WebConfigChanged" Value="1" Action="write" Type="string" KeyPath="yes" />
<util:XmlFile Id="UpdateConnectionString"
File="[#Web.Config]"
Action="setValue"
ElementPath="//configuration/connectionStrings/add[\[]@name=’Default’[\]]/@connectionString"
Value="[CONNNECTIONSTRING]"/>
</Component>
</Directory>
는 일부 참조 있습니다에서 가장 최근에 사용한 구성 요소입니다 : 여기 "Site.Components.wxs"에서의 모습입니다 내가 지금까지 사용했던 페이지 :
http://ranjithk.com/2009/11/06/wix-update-application-configuration-files-during-installation/
http://www.mail-archive.com/[email protected]/msg03256.html
duh! 나는 그 열쇠를 복사/붙여 넣기를하겠다고 맹세 했었을 것이다. 아마도 한순간에 그랬을 것이다. 이제 오류 메시지를 더 잘 이해합니다. File 속성이 문제가있는 키라고 말합니다. 어떻게 든 'UpdateConnectionString'ID가 마음에 들지 않는다고 생각했습니다. 감사! – Rick