From: Rob M. <ro...@us...> - 2004-09-10 15:50:05
|
Update of /cvsroot/wix/wix/src/dark In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3277/src/dark Modified Files: dark.cs Log Message: all - improve parameter checking on public APIs all - HRESULT lost when tools throw results of Interop.Marshal.GetLastWin32Error dark - extract embeded CABs from MSIs dark - use same out parameter as other tools dark - parse multiple appsearch entires on the same property dark - support FileSearch parsing dark - corrections to registry value parsing dark - strip braces on upgrade code data - correctly modularize Shortcut/@WkDir linker - check last error when closing cab after extraction returns unhelpful error linker - Interop.Marshal.GetLastWin32Error for Interop APIs what don't have SetLastError=true in their DllImport attributes linker - ExtractCabFinish call to Interop.Marshal.GetLastWin32Error getting last error from the ExtractCab Interop call tallow - fix problem loading assemblies for registration Index: dark.cs =================================================================== RCS file: /cvsroot/wix/wix/src/dark/dark.cs,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** dark.cs 8 Sep 2004 05:03:32 -0000 1.8 --- dark.cs 10 Sep 2004 15:49:07 -0000 1.9 *************** *** 28,46 **** public class Dark { private string inputFile; private string outputFile; private bool showLogo; private bool showHelp; ! private bool quitOnError; private bool skipUI; private bool skipVSI; private bool processUIOnly; private bool skipSequenceTables; private bool skipSummaryInfo; ! private bool unicode; private bool exportBinaries; private bool processingModule; private bool keepEmptyTables; private string basePath; private MessageHandler messageHandler; --- 28,99 ---- public class Dark { + /// <summary> + /// input file + /// </summary> private string inputFile; + + /// <summary> + /// output file + /// </summary> private string outputFile; + + /// <summary> + /// show the logo + /// </summary> private bool showLogo; + + /// <summary> + /// show help + /// </summary> private bool showHelp; ! ! /// <summary> ! /// skip ui ! /// </summary> private bool skipUI; + + /// <summary> + /// skip VSI specific elements + /// </summary> private bool skipVSI; + + /// <summary> + /// process just the ui + /// </summary> private bool processUIOnly; + + /// <summary> + /// skip sequence tables + /// </summary> private bool skipSequenceTables; + + /// <summary> + /// skip summary info + /// </summary> private bool skipSummaryInfo; ! ! /// <summary> ! /// export binaries ! /// </summary> private bool exportBinaries; + + /// <summary> + /// processing merge module + /// </summary> private bool processingModule; + + /// <summary> + /// keep empty tables + /// </summary> private bool keepEmptyTables; + + /// <summary> + /// base path for exporting files + /// </summary> private string basePath; + + /// <summary> + /// message handling + /// </summary> private MessageHandler messageHandler; *************** *** 52,56 **** this.showLogo = true; this.showHelp = false; - this.quitOnError = true; this.skipUI = false; this.skipVSI = false; --- 105,108 ---- *************** *** 58,62 **** this.skipSequenceTables = false; this.skipSummaryInfo = false; - this.unicode = false; this.exportBinaries = false; this.processingModule = false; --- 110,113 ---- *************** *** 121,130 **** Console.WriteLine(); Console.WriteLine(" case-insensitive option arguments may be specified in any order:"); - Console.WriteLine(" /u or -u output XML file in Unicode rather than ANSI"); Console.WriteLine(" /s or -s exclude standard sequence actions, process Custom and dialogs"); Console.WriteLine(" /p or -p exclude Package element generation from summary information"); Console.WriteLine(" /n or -n no UI elements processed"); Console.WriteLine(" /o or -o only UI elements processed"); - Console.WriteLine(" /k or -k keep compiling after reporting errors, may produce bad output"); Console.WriteLine(" /x <path> or -x <path> export binary streams from Binary and Icon tables to path"); Console.WriteLine(" /m or -m merge module"); --- 172,179 ---- *************** *** 157,161 **** // Set the Properties - decompiler.ContinueOnError = !this.quitOnError; decompiler.SkipUI = this.skipUI; decompiler.SkipVSI = this.skipVSI; --- 206,209 ---- *************** *** 163,167 **** decompiler.SkipSequenceTables = this.skipSequenceTables; decompiler.SkipSummaryInfo = this.skipSummaryInfo; - decompiler.Unicode = this.unicode; decompiler.ExportBinaries = this.exportBinaries; decompiler.IsMergeModule = this.processingModule; --- 211,214 ---- *************** *** 177,185 **** // TODO: once all WixExceptions are converted to errors, this clause // should be a no-op that just catches WixFatalErrorException's ! return Common.DisplayWixException("dark.exe", "DARK", we); } catch (Exception e) { ! this.OnMessage(WixErrors.UnexpectedException(e.Message, e.StackTrace)); } --- 224,232 ---- // TODO: once all WixExceptions are converted to errors, this clause // should be a no-op that just catches WixFatalErrorException's ! return this.messageHandler.DisplayWixException("dark.exe", "DARK", we); } catch (Exception e) { ! this.OnMessage(WixErrors.UnexpectedException(e.Message, e.GetType().ToString(), e.StackTrace)); } *************** *** 200,210 **** continue; } //Console.WriteLine("arg: {0}, length: {1}", arg, arg.Length); if ('-' == arg[0] || '/' == arg[0]) { string parameter = arg.Substring(1).ToLower(); ! if ("k" == parameter) { ! this.quitOnError = false; } else if ("vsi" == parameter) --- 247,263 ---- continue; } + //Console.WriteLine("arg: {0}, length: {1}", arg, arg.Length); if ('-' == arg[0] || '/' == arg[0]) { string parameter = arg.Substring(1).ToLower(); ! if ("out" == parameter) { ! if (args.Length < ++i || args[i][0] == '/') ! { ! throw new ArgumentException("must specify a file name for parameter", "-out"); ! } ! ! this.outputFile = args[i]; } else if ("vsi" == parameter) *************** *** 228,235 **** this.skipSummaryInfo = true; } - else if ("u" == parameter) - { - this.unicode = true; - } else if ("x" == parameter) { --- 281,284 ---- |