Wix无法检测到变化

时间:2016-06-10 20:39:06

标签: wix windows-installer

这是我的组成部分:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
  <Patch AllowRemoval='yes' Manufacturer='Test Ltd.' MoreInfoURL='www.test.com'
    DisplayName='Test Patch' Description='Small Update Patch' Classification='Update'>

    <Media Id='5000' Cabinet='Patch.cab'>
      <PatchBaseline Id='Sample' />
    </Media>

    <PatchFamilyRef Id="SamplePatchFamily"/>

  </Patch>

  <Fragment>    
    <PatchFamily Id='SamplePatchFamily' Version='1.0.0.0' Supersede='yes'>
      <ComponentRef Id='ServiceComponent' />
    </PatchFamily>
  </Fragment>
</Wix>

这是我的补丁:

torch.exe -p -xi bin\Debug\1.1\SetupLogger.wixpdb bin\Debug\1.2\SetupLogger.wixpdb -out diff.wixmst
candle.exe patch.wxs
light.exe patch.wixobj -out patch.wixmsp
pyro.exe patch.wixmsp -out patch.msp -t Sample diff.wixmst

这是我的补丁生成器脚本:

ServiceExecutable

如果我在同一路径$(var.LoggerService.TargetPath)中修改文件warning PYRO1079 : The cabinet 'Patch.cab' does not contain any files. If this patch contains no files, this warning can likely be safely ignored. Otherwise, try passing -p to torch.exe when first building the transforms, or add a ComponentRef to your PatchFamily authoring to pull changed files into the cabinet. diff.wixmst : error PYRO0227 : The transform being built did not contain any differences so it could not be created. ,那么Wix不会检测到任何更改并对我说:

ServiceExecutable

但是,如果我修改文件KeyPath并将其放在新目录中,那么在文件源标记中指定新目录,然后由Wix选择更改,一切都很好。

问题:如何在不改变源路径的情况下让Wix检测到更改?我认为Wix应该能够检测到更改,因为main, READ: TLSv1.2 Alert, length = 2 main, RECV TLSv1.2 ALERT: fatal, handshake_failure main, called closeSocket() main, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure main, IOException in getSession(): javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure main, called close() main, called closeInternal(true) 262 [main] DEBUG org.apache.http.impl.conn.DefaultClientConnection - Connection shut down main, called close() main, called closeInternal(true) 263 [main] DEBUG org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager - Released connection is not reusable. 263 [main] DEBUG org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Releasing connection [HttpRoute[{s}->https://<I-replaced>]][null] 263 [main] DEBUG org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Notifying no-one, there are no waiting threads Exception in thread "main" javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated at sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:431) at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128) at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:339) at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:123) at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:147) at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:108) at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:641) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:576) at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:554) at com.google.api.client.http.apache.ApacheHttpRequest.execute(ApacheHttpRequest.java:67) at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:960) 文件的校验和已经更改。

0 个答案:

没有答案