【发布时间】:2014-07-27 19:16:08
【问题描述】:
我需要创建一个 MSI 以在静默模式下运行安装文件。 环顾四周,我注意到 WIX 应该适用于我的情况,但我无法在 MSI 包中嵌入安装所需的所有文件(它仅包括 setup.exe 文件)。 放在文件的 xml WIX 下方:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" Name="SetupAccessRT2013" Language="1033" Version="1.0.0.0" Manufacturer="" UpgradeCode="e4bcb0cc-f7a8-43b8-ac66-98e01d1e3ee4">
<Package Description='pak' InstallerVersion='200' Compressed='yes' />
<Media Id='1' Cabinet='setup.cab' EmbedCab='yes' />
</Product>
<Fragment>
<DirectoryRef Id="TARGETDIR">
<Directory Id="TempFolder">
<Directory Id="INSTALLLOCATION" Name="~_tmpdir">
<Directory Id="dirBC3E512250E74A98BACAB570B3DD87D7" Name="AccessRT2013silent">
<Component Id="cmpD761E74C0DA72236640BD071EC999550" Guid="{F42E878A-DF6D-49C2-B3B8-24C5A72EEB27}">
<File Id="fil1804F4AC5510C5DC18870FAAD2A8A47D" Source="C:\AccessRT2013silent\autorun.inf" />
<File Id="filA0D99F0F2E3A44845E905E1E0058139E" Source="C:\AccessRT2013silent\Config.XML" />
<File Id="filBFD7DBA2331ABC3318C55567EEB72E50" Source="C:\AccessRT2013silent\readme.htm" />
<File Id="filC632F72A53EB8D7F3087893644411FAC" Source="C:\AccessRT2013silent\setup.dll" />
<File Id="filB20574B529F8E6C6D5BB712F8548F31B" Source="C:\AccessRT2013silent\setup.exe" />
</Component>
<Directory Id="dirD81488680DB588FD1907E8F902719D35" Name="accessrt.it-it">
<Component Id="cmp7B135F7920D368786218584715620FA0" Guid="{C7C1658D-9191-484A-B05D-4867EF0480F8}">
<File Id="filE95BAC2624D33FA0D67C2F4FF60D0AB5" Source="C:\AccessRT2013silent\accessrt.it-it\accessrtmui.msi" />
<File Id="fil123E12F79D36C0517F12EC443E675BF2" Source="C:\AccessRT2013silent\accessrt.it-it\accessrtmui.xml" />
<File Id="filE4382BD8850A3C4C239BE2BC6FEF84BB" Source="C:\AccessRT2013silent\accessrt.it-it\accrtlr.cab" />
<File Id="filE8A8CF1A02A8D2993C7B2FF3C5406688" Source="C:\AccessRT2013silent\accessrt.it-it\setup.xml" />
</Component>
</Directory>
<Directory Id="dirA2E4541D4880B837EF8E04848567D0B8" Name="accessrt.ww">
<Component Id="cmpBC53101B6EC49831C6BC88BDE95A11D9" Guid="{E8427412-57C0-42B1-96E1-BD5F06B56E74}">
<File Id="fil2357E5DF3FEAACAEE875A4C12C9FD6AB" Source="C:\AccessRT2013silent\accessrt.ww\accessrt.cab" />
<File Id="fil14B06E6CDD9832291B73228DA6C02F88" Source="C:\AccessRT2013silent\accessrt.ww\accessrt.msi" />
<File Id="filC8C91E8D9B3F96013D6FB37486ED3375" Source="C:\AccessRT2013silent\accessrt.ww\accessrt.xml" />
<File Id="fil3B693F9063FCA849825BCB0E3D23C64D" Source="C:\AccessRT2013silent\accessrt.ww\accessrtww.xml" />
<File Id="fil14432AEAA72B0EBD5451E94172A3E6D8" Source="C:\AccessRT2013silent\accessrt.ww\office64ww.msi" />
<File Id="fil83105F964A9B7E9531D023A54E3CAE74" Source="C:\AccessRT2013silent\accessrt.ww\office64ww.xml" />
<File Id="filCC537369EB4A1128FE2BAE1FD266B556" Source="C:\AccessRT2013silent\accessrt.ww\ose.exe" />
<File Id="fil13B561811753D473CE5C7C073BA1AD78" Source="C:\AccessRT2013silent\accessrt.ww\osetup.dll" />
<File Id="fil1CA8D5B548CE5CAA32BE21BD9E95B7BC" Source="C:\AccessRT2013silent\accessrt.ww\owow64ww.cab" />
<File Id="fil7D37CDD5398F4B53E2AC6BCDEA7AF6FA" Source="C:\AccessRT2013silent\accessrt.ww\pidgenx.dll" />
<File Id="filD2099F50C0355ABE9F4A979286432989" Source="C:\AccessRT2013silent\accessrt.ww\pkeyconfig-office.xrm-ms" />
<File Id="filD340F0F71D625B8F9CA44DA4589BB126" Source="C:\AccessRT2013silent\accessrt.ww\setup.xml" />
</Component>
</Directory>
<Directory Id="dir64B9E38E4D4A9D2F10B204431209FED0" Name="catalog">
<Component Id="cmp68E05D43C17F3731AF28B3A313CB7FFE" Guid="{6B583FE6-C53F-4184-BAE6-25C4DDC8DC1D}">
<File Id="filD34937D9FBDB8FEA9D90EAFD8F9659B1" Source="C:\AccessRT2013silent\catalog\files15.cat" />
</Component>
</Directory>
<Directory Id="dirB5A17BED548E019D6FC35907941C567B" Name="office.it-it">
<Component Id="cmp7A2B708BBAA3333F61474D42F505D477" Guid="{78AF3691-DF2C-4093-82C2-1A3A84CE00BE}">
<File Id="fil584C88D5876BD88EDED385EF2C8E714E" Source="C:\AccessRT2013silent\office.it-it\branding.xml" />
<File Id="fil081ECC2A6BCE9D9CC7E263DA68445E4E" Source="C:\AccessRT2013silent\office.it-it\officelr.cab" />
<File Id="filC4ECA87470C944F5010BEBE14F171861" Source="C:\AccessRT2013silent\office.it-it\officemui.msi" />
<File Id="filD90D9E08B5B9CE2B78D0838EA8E6C2CE" Source="C:\AccessRT2013silent\office.it-it\officemui.xml" />
<File Id="fil950EFBCD753783771D8CD2169597A10C" Source="C:\AccessRT2013silent\office.it-it\osetupui.dll" />
<File Id="filBF8E8C3BBA6882AAFF4A39D9EA4097C5" Source="C:\AccessRT2013silent\office.it-it\pss10r.chm" />
<File Id="fil8566B0F88EE45334F0E45540967B8153" Source="C:\AccessRT2013silent\office.it-it\setup.chm" />
<File Id="filED57A5D2C1D850B757404D0E4F561446" Source="C:\AccessRT2013silent\office.it-it\setup.xml" />
<File Id="filBA8902E75FC86E6CD530EEBDE105DABF" Source="C:\AccessRT2013silent\office.it-it\shellui.mst" />
</Component>
</Directory>
<Directory Id="dirA6B1FEC7FD17EC82D7CFF3EBC7ABAB89" Name="office64.it-it">
<Component Id="cmpF6F336FD773C599549FB87C2F1BBBA48" Guid="{EFFE139C-F418-49F4-9F88-7C8B59970724}">
<File Id="fil4BEBA1AEAFB4A46321114AC36C9423A5" Source="C:\AccessRT2013silent\office64.it-it\office64mui.msi" />
<File Id="filFBEE6C1441CDF4BE6B19DF825CA881BB" Source="C:\AccessRT2013silent\office64.it-it\office64mui.xml" />
<File Id="fil8FCBDEC21D69D2B3FEACA6364DFF98EC" Source="C:\AccessRT2013silent\office64.it-it\owow64lr.cab" />
<File Id="filCAD94331BB99F7FFD85D5447B93A9286" Source="C:\AccessRT2013silent\office64.it-it\setup.xml" />
</Component>
</Directory>
<Directory Id="dir98F696A3A7E255FF20FD4486771EA3EB" Name="updates">
<Component Id="cmp7228C5A67608A940FD38EFA9265C004A" Guid="{DC337124-8D1C-4C83-9E56-46C43F292C7E}">
<File Id="filFC219EA21604C0398FDD48D4F13D674B" Source="C:\AccessRT2013silent\updates\readme.txt" />
</Component>
</Directory>
</Directory>
</Directory>
</Directory>
</DirectoryRef>
</Fragment>
<Fragment>
<Feature Id='InstallFeature' Title='Install Feature' Level='1'>
<ComponentRef Id="cmpD761E74C0DA72236640BD071EC999550" />
<ComponentRef Id="cmp7B135F7920D368786218584715620FA0" />
<ComponentRef Id="cmpBC53101B6EC49831C6BC88BDE95A11D9" />
<ComponentRef Id="cmp68E05D43C17F3731AF28B3A313CB7FFE" />
<ComponentRef Id="cmp7A2B708BBAA3333F61474D42F505D477" />
<ComponentRef Id="cmpF6F336FD773C599549FB87C2F1BBBA48" />
<ComponentRef Id="cmp7228C5A67608A940FD38EFA9265C004A" />
</Feature>
<!-- Run Action -->
<CustomAction Id="RunWrapExe" Return="check" Execute="deferred" FileKey="filB20574B529F8E6C6D5BB712F8548F31B"
ExeCommand="setup.exe /CONFIG Config.XML" HideTarget="yes" Impersonate="no" />
<InstallExecuteSequence>
<Custom Action="RunWrapExe" After="InstallFiles">NOT REMOVE~="ALL"</Custom>
</InstallExecuteSequence>
</Fragment>
</Wix>
我该怎么办?
【问题讨论】:
-
考虑使用 WiX Bootstrapper 项目而不是 WiX 设置项目。
-
你能给我举个例子吗?这个Wix该死的我不能用它!
-
文档给出了一个完整的例子。您需要将 Payload 元素添加到您的 ExePackage。你有问题吗?
-
我发现 Bryan Johnston 的博客文章很有帮助。下载源代码并挑选:bryanpjohnston.com/2012/09/28/…
标签: wix installation