>From wcautil.h (which includes dutil.h) #define ExitTrace WcaLogError #define ExitTrace1 WcaLogError #define ExitTrace2 WcaLogError #define ExitTrace3 WcaLogError
>From dutil.h: #define ExitOnFailure(x, s) if (FAILED(x)) { ExitTrace(x, s); goto LExit; } #define ExitOnFailure1(x, f, s) if (FAILED(x)) { ExitTrace1(x, f, s); goto LExit; } #define ExitOnFailure2(x, f, s, t) if (FAILED(x)) { ExitTrace2(x, f, s, t); goto LExit; } #define ExitOnFailure3(x, f, s, t, u) if (FAILED(x)) { ExitTrace3(x, f, s, t, u); goto LExit; } So, they go through WcaLogError. Which should show up in your verbose MSI log file. On Fri, Jan 6, 2012 at 4:21 PM, Kevin Hebert <ke...@legendary-immersion.com>wrote: > Bill, I'm trying to use the functions that you provided, and I'm just > curious as to where the ExitOnFailure logs are saved? I've placed my > own logs around the function, and I know it's failing somewhere in > there. Thanks. > > On 1/3/2012 4:28 PM, Bill Tutt wrote: > > On Tue, Jan 3, 2012 at 5:26 PM, Bill Tutt<b...@tutts.org> wrote: > > > >> Something like this: > >> > >> // Extract files to temp directory. > >> hr = PathCreateTempDirectory(NULL, L"HRCAAxeda%03x", > 999,&pwszTempDir); > >> ExitOnFailure(hr, "Failed to load create temp directory for DLL > >> extraction."); > >> extractedFiles = true; > >> hr = ExtractFileToDir(&pwszCustomActionData, pwszTempDir); > >> ExitOnFailure(hr, "Failed to extract file from CA"); > >> hr = ExtractFileToDir(&pwszCustomActionData, pwszTempDir); > >> ExitOnFailure(hr, "Failed to extract file from CA"); > >> hr = ExtractFileToDir(&pwszCustomActionData, pwszTempDir); > >> ExitOnFailure(hr, "Failed to extract file from CA"); > >> <call into DLL, whatever...> > >> > >> > >> > > This should be: > > <Load DLLs, whatever...> > > <Call into DLLS, whatever...> > > > > > >> > >> LExit: > >> if (extractedFiles) > >> { > >> > >> There should be a "<unload DLLs, whatever>" here. > >> DirEnsureDeleteEx(pwszTempDir, DIR_DELETE_FILES | DIR_DELETE_RECURSE > | > >> DIR_DELETE_SCHEDULE); > >> WcaLog(LOGMSG_VERBOSE, "Removed extracted files from '%ls': ", > >> pwszTempDir); > >> } > >> <other cleanup actions> > >> > >> > >> > > Bill > > > ------------------------------------------------------------------------------ > > Write once. Port to many. > > Get the SDK and tools to simplify cross-platform app development. Create > > new or port existing apps to sell to consumers worldwide. Explore the > > Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join > > http://p.sf.net/sfu/intel-appdev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > -- > Kevin Hebert > > > > ------------------------------------------------------------------------------ > Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex > infrastructure or vast IT resources to deliver seamless, secure access to > virtual desktops. With this all-in-one solution, easily deploy virtual > desktops for less than the cost of PCs and save 60% on VDI infrastructure > costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > ------------------------------------------------------------------------------ RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users