The place to look for this kind of information is in the wix source code, and
in particular in Events.h and IBootstrapperApplication.h in particular.  I
also look at the WixBA implementation and started with a ResolveSource
similar to that implementation.  But I needed to handle failures for a
particular payload file and do retires.  The approach I took may not be what
you want, and may be a little complex to explain.  But basically I changed
the implementation of ResolveSource (from what I observed in WixBA) so that
int retires was a field of the class rather than a method variable.

In ResolveSource I increment the retires based on e.PayloadId rather than,
e.PackageOrContainerId, unless it is null.

In CacheAcquireComplete I do some checks of the retry count, using
e.PayloadId (unless null then e.PackageOrContainerId).  If I want to retry
return Result.Retry, otherwise return Result.Ok (which lets a failure ripple
up).

In CacheVerifyComplete I do some checks of the retry count using e.PayloadId
(unless null then e.PackageId).  If I want to retry return Result.TryAgain,
otherwise return Result.Ok (which lets a failure ripple up).

In CachePackageComplete I do some checks of the retry count, using
e.PackageId .  If I want to retry return Result.Retry, otherwise return
Result.Ok (which lets a failure ripple up).

ErrorEventArgs e are handled in a Error handler similar to ExecuteError() in
WixBA.

There are some other threads in the last year in which some of these issues
are discussed.
Phill









--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/WiX-custom-BA-How-to-detect-a-failure-in-downloading-payload-tp7598841p7598842.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to