Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add support for manually overriding the .NET Framework version used to add the DbProviderFactory from the design-time installer. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | vs2012 |
Files: | files | file ages | folders |
SHA1: |
eadd1922b61dc2406547377eb2022854 |
User & Date: | mistachkin 2012-09-14 11:38:33.105 |
Context
2012-09-14
| ||
11:46 | Fix typo and target framework semantics of the testlinq project. check-in: 1c8f902e08 user: mistachkin tags: vs2012 | |
11:38 | Add support for manually overriding the .NET Framework version used to add the DbProviderFactory from the design-time installer. check-in: eadd1922b6 user: mistachkin tags: vs2012 | |
10:55 | When processing the .NET Framework registry hives in the design-time installer, stop validating that the install directory exists because it does not exist for the .NET Framework 4.5. check-in: c91aa37c46 user: mistachkin tags: vs2012 | |
Changes
Changes to Setup/SQLite.iss.
︙ | ︙ | |||
84 85 86 87 88 89 90 | Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() and CheckForNetFx35(1) Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() #if Pos("NativeOnly", AppConfiguration) == 0 && AppProcessor == "x86" Components: {#InstallerCondition}; Tasks: gac\vs2005; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2008 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: {#InstallerCondition}; Tasks: gac\vs2008; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2005 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: {#InstallerCondition}; Tasks: gac\vs2010; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noNetFx45 true -noVs2005 true -noVs2008 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() | | | | 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() and CheckForNetFx35(1) Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "install ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() #if Pos("NativeOnly", AppConfiguration) == 0 && AppProcessor == "x86" Components: {#InstallerCondition}; Tasks: gac\vs2005; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2008 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: {#InstallerCondition}; Tasks: gac\vs2008; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2005 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: {#InstallerCondition}; Tasks: gac\vs2010; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noNetFx45 true -noVs2005 true -noVs2008 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() Components: {#InstallerCondition}; Tasks: gac\vs2012; Filename: {app}\bin\Installer.exe; Parameters: "-install true -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noNetFx40 true -noVs2005 true -noVs2008 true -noVs2010 true -configVersion 4.0.30319 -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() #endif [UninstallRun] #if Pos("NativeOnly", AppConfiguration) == 0 && AppProcessor == "x86" Components: {#InstallerCondition}; Tasks: gac\vs2012; Filename: {app}\bin\Installer.exe; Parameters: "-install false -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noNetFx40 true -noVs2005 true -noVs2008 true -noVs2010 true -configVersion 4.0.30319 -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() Components: {#InstallerCondition}; Tasks: gac\vs2010; Filename: {app}\bin\Installer.exe; Parameters: "-install false -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx20 true -noNetFx45 true -noVs2005 true -noVs2008 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() Components: {#InstallerCondition}; Tasks: gac\vs2008; Filename: {app}\bin\Installer.exe; Parameters: "-install false -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2005 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() Components: {#InstallerCondition}; Tasks: gac\vs2005; Filename: {app}\bin\Installer.exe; Parameters: "-install false -wow64 true -installFlags AllExceptGAC -tracePriority Lowest -verbose true -noCompact true -noNetFx40 true -noNetFx45 true -noVs2008 true -noVs2010 true -noVs2012 true -whatIf false -confirm true"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() #endif Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx4InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx4Setup() Components: Application\LINQ; Tasks: ngen; Filename: {code:GetNetFx2InstallRoot|Ngen.exe}; Parameters: "uninstall ""{app}\bin\System.Data.SQLite.Linq.dll"" /nologo"; Flags: skipifdoesntexist; Check: CheckIsNetFx2Setup() and CheckForNetFx35(1) |
︙ | ︙ |
Changes to Tests/installer.eagle.
︙ | ︙ | |||
349 350 351 352 353 354 355 | set code [catch { testClrExec $installerExeFile [list -eventflags Wait -stdout output \ -success 0] -debugPriority Lowest -tracePriority MediumHigh \ -noRuntimeVersion true -noCompact true -noNetFx20 true -noNetFx40 true \ -noVs2005 true -noVs2008 true -noVs2010 true -whatIf true -verbose \ true -confirm true -install true -logFileName [appendArgs \" [file \ nativename $fileName] \"] -traceFormat [appendArgs \" "#{0}: {2}" \"] \ | | | 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 | set code [catch { testClrExec $installerExeFile [list -eventflags Wait -stdout output \ -success 0] -debugPriority Lowest -tracePriority MediumHigh \ -noRuntimeVersion true -noCompact true -noNetFx20 true -noNetFx40 true \ -noVs2005 true -noVs2008 true -noVs2010 true -whatIf true -verbose \ true -confirm true -install true -logFileName [appendArgs \" [file \ nativename $fileName] \"] -traceFormat [appendArgs \" "#{0}: {2}" \"] \ -debug true -wow64 true -configVersion 4.0.30319 } error] tlog "---- BEGIN STDOUT OUTPUT\n" tlog $output tlog "\n---- END STDOUT OUTPUT\n" set wow64 [expr {[haveConstraint amd64.64bit] ? "\\Wow6432Node" : ""}] |
︙ | ︙ | |||
386 387 388 389 390 391 392 | set code [catch { testClrExec $installerExeFile [list -eventflags Wait -stdout output \ -success 0] -debugPriority Lowest -tracePriority MediumHigh \ -noRuntimeVersion true -noCompact true -noNetFx20 true -noNetFx40 true \ -noVs2005 true -noVs2008 true -noVs2010 true -whatIf true -verbose \ true -confirm true -install false -logFileName [appendArgs \" [file \ nativename $fileName] \"] -traceFormat [appendArgs \" "#{0}: {2}" \"] \ | | | 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 | set code [catch { testClrExec $installerExeFile [list -eventflags Wait -stdout output \ -success 0] -debugPriority Lowest -tracePriority MediumHigh \ -noRuntimeVersion true -noCompact true -noNetFx20 true -noNetFx40 true \ -noVs2005 true -noVs2008 true -noVs2010 true -whatIf true -verbose \ true -confirm true -install false -logFileName [appendArgs \" [file \ nativename $fileName] \"] -traceFormat [appendArgs \" "#{0}: {2}" \"] \ -debug true -wow64 true -configVersion 4.0.30319 } error] tlog "---- BEGIN STDOUT OUTPUT\n" tlog $output tlog "\n---- END STDOUT OUTPUT\n" set wow64 [expr {[haveConstraint amd64.64bit] ? "\\Wow6432Node" : ""}] |
︙ | ︙ |
Changes to tools/install/Installer.cs.
︙ | ︙ | |||
1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 | private Configuration( Assembly assembly, string logFileName, string directory, string coreFileName, string linqFileName, string designerFileName, string debugFormat, string traceFormat, InstallFlags installFlags, TracePriority debugPriority, TracePriority tracePriority, bool install, bool wow64, | > > | 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 | private Configuration( Assembly assembly, string logFileName, string directory, string coreFileName, string linqFileName, string designerFileName, string registryVersion, string configVersion, string debugFormat, string traceFormat, InstallFlags installFlags, TracePriority debugPriority, TracePriority tracePriority, bool install, bool wow64, |
︙ | ︙ | |||
1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 | { this.assembly = assembly; this.logFileName = logFileName; this.directory = directory; this.coreFileName = coreFileName; this.linqFileName = linqFileName; this.designerFileName = designerFileName; this.debugFormat = debugFormat; this.traceFormat = traceFormat; this.installFlags = installFlags; this.debugPriority = debugPriority; this.tracePriority = tracePriority; this.install = install; this.wow64 = wow64; | > > | 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 | { this.assembly = assembly; this.logFileName = logFileName; this.directory = directory; this.coreFileName = coreFileName; this.linqFileName = linqFileName; this.designerFileName = designerFileName; this.registryVersion = registryVersion; this.configVersion = configVersion; this.debugFormat = debugFormat; this.traceFormat = traceFormat; this.installFlags = installFlags; this.debugPriority = debugPriority; this.tracePriority = tracePriority; this.install = install; this.wow64 = wow64; |
︙ | ︙ | |||
1964 1965 1966 1967 1968 1969 1970 | string designerFileName = null; GetDefaultFileNames( ref directory, ref coreFileName, ref linqFileName, ref designerFileName); return new Configuration(thisAssembly, null, directory, | | | 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 | string designerFileName = null; GetDefaultFileNames( ref directory, ref coreFileName, ref linqFileName, ref designerFileName); return new Configuration(thisAssembly, null, directory, coreFileName, linqFileName, designerFileName, null, null, TraceOps.DebugFormat, TraceOps.TraceFormat, InstallFlags.Default, TracePriority.Default, TracePriority.Default, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, false, false, false); } |
︙ | ︙ | |||
2066 2067 2068 2069 2070 2071 2072 | // // NOTE: Figure out which command line option this is // (based on a partial name match) and then try // to interpret the textual value as the correct // type. // | | > > > > | 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 | // // NOTE: Figure out which command line option this is // (based on a partial name match) and then try // to interpret the textual value as the correct // type. // if (MatchOption(newArg, "configVersion")) { configuration.configVersion = text; } else if (MatchOption(newArg, "confirm")) { bool? value = ParseBoolean(text); if (value == null) { error = TraceOps.DebugAndTrace( TracePriority.Lowest, debugCallback, |
︙ | ︙ | |||
2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 | return false; continue; } configuration.noVs2012 = (bool)value; } else if (MatchOption(newArg, "strict")) { bool? value = ParseBoolean(text); if (value == null) { error = TraceOps.DebugAndTrace( | > > > > | 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 | return false; continue; } configuration.noVs2012 = (bool)value; } if (MatchOption(newArg, "registryVersion")) { configuration.registryVersion = text; } else if (MatchOption(newArg, "strict")) { bool? value = ParseBoolean(text); if (value == null) { error = TraceOps.DebugAndTrace( |
︙ | ︙ | |||
2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 | /////////////////////////////////////////////////////// if (!configuration.noLog && !String.IsNullOrEmpty(configuration.logFileName)) { Trace.Listeners.Add(new TextWriterTraceListener( configuration.logFileName)); } } // // NOTE: Dump the configuration now in case we need to // troubleshoot any issues. // | > > > > > | 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 | /////////////////////////////////////////////////////// if (!configuration.noLog && !String.IsNullOrEmpty(configuration.logFileName)) { Trace.Listeners.Add(new TextWriterTraceListener( configuration.logFileName)); // // NOTE: Technically, we created the log file. // filesCreated++; } } // // NOTE: Dump the configuration now in case we need to // troubleshoot any issues. // |
︙ | ︙ | |||
3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 | traceCallback(String.Format(NameAndValueFormat, "LinqFileName", ForDisplay(linqFileName)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "DesignerFileName", ForDisplay(designerFileName)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "DebugFormat", ForDisplay(debugFormat)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "TraceFormat", ForDisplay(traceFormat)), | > > > > > > > > | 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 | traceCallback(String.Format(NameAndValueFormat, "LinqFileName", ForDisplay(linqFileName)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "DesignerFileName", ForDisplay(designerFileName)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "RegistryVersion", ForDisplay(registryVersion)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "ConfigVersion", ForDisplay(configVersion)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "DebugFormat", ForDisplay(debugFormat)), traceCategory); traceCallback(String.Format(NameAndValueFormat, "TraceFormat", ForDisplay(traceFormat)), |
︙ | ︙ | |||
3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 | private string designerFileName; public string DesignerFileName { get { return designerFileName; } set { designerFileName = value; } } /////////////////////////////////////////////////////////////////// private string debugFormat; public string DebugFormat { get { return debugFormat; } | > > > > > > > > > > > > > > > > > > | 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 | private string designerFileName; public string DesignerFileName { get { return designerFileName; } set { designerFileName = value; } } /////////////////////////////////////////////////////////////////// private string registryVersion; public string RegistryVersion { get { return registryVersion; } set { registryVersion = value; } } /////////////////////////////////////////////////////////////////// private string configVersion; public string ConfigVersion { get { return configVersion; } set { configVersion = value; } } /////////////////////////////////////////////////////////////////// private string debugFormat; public string DebugFormat { get { return debugFormat; } |
︙ | ︙ | |||
3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 | private static Assembly thisAssembly = Assembly.GetExecutingAssembly(); private static string traceCategory = Path.GetFileName( thisAssembly.Location); /* NOTE: Same for debug and trace. */ private static TraceCallback debugCallback = AppDebug; private static TraceCallback traceCallback = AppTrace; #endregion /////////////////////////////////////////////////////////////////////// #region Trace Handling private static string GetLogFileName( string typeName | > > > > > > | 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 | private static Assembly thisAssembly = Assembly.GetExecutingAssembly(); private static string traceCategory = Path.GetFileName( thisAssembly.Location); /* NOTE: Same for debug and trace. */ private static TraceCallback debugCallback = AppDebug; private static TraceCallback traceCallback = AppTrace; /////////////////////////////////////////////////////////////////////// private static int filesCreated = 0; private static int filesModified = 0; private static int filesDeleted = 0; #endregion /////////////////////////////////////////////////////////////////////// #region Trace Handling private static string GetLogFileName( string typeName |
︙ | ︙ | |||
3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 | /////////////////////////////////////////////////////////////////////// [MethodImpl(MethodImplOptions.NoInlining)] private static bool ForEachFrameworkConfig( MockRegistry registry, FrameworkList frameworkList, FrameworkConfigCallback callback, string invariant, string name, string description, string typeName, AssemblyName assemblyName, object clientData, bool wow64, | > | 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 | /////////////////////////////////////////////////////////////////////// [MethodImpl(MethodImplOptions.NoInlining)] private static bool ForEachFrameworkConfig( MockRegistry registry, FrameworkList frameworkList, FrameworkConfigCallback callback, string version, /* NOTE: Optional. */ string invariant, string name, string description, string typeName, AssemblyName assemblyName, object clientData, bool wow64, |
︙ | ︙ | |||
4076 4077 4078 4079 4080 4081 4082 | // // NOTE: Grab the supported versions of this particular // framework. // VersionList frameworkVersionList; | > > > > > > > > > > > | | | | | > | 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 | // // NOTE: Grab the supported versions of this particular // framework. // VersionList frameworkVersionList; if (version != null) { // // NOTE: Manual override of the *ONE* framework version // to process. // frameworkVersionList = new VersionList(); frameworkVersionList.Add(new Version(version)); } else { if (!frameworkList.Versions.TryGetValue( frameworkName, out frameworkVersionList) || (frameworkVersionList == null)) { continue; } } foreach (Version frameworkVersion in frameworkVersionList) { TraceOps.DebugAndTrace(TracePriority.Lower, debugCallback, traceCallback, String.Format( "frameworkName = {0}, frameworkVersion = {1}, " + |
︙ | ︙ | |||
4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 | /////////////////////////////////////////////////////////////////////// [MethodImpl(MethodImplOptions.NoInlining)] private static bool ForEachFrameworkRegistry( MockRegistry registry, FrameworkList frameworkList, FrameworkRegistryCallback callback, object clientData, bool wow64, bool throwOnMissing, bool whatIf, bool verbose, ref string error ) | > | 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 | /////////////////////////////////////////////////////////////////////// [MethodImpl(MethodImplOptions.NoInlining)] private static bool ForEachFrameworkRegistry( MockRegistry registry, FrameworkList frameworkList, FrameworkRegistryCallback callback, string version, /* NOTE: Optional. */ object clientData, bool wow64, bool throwOnMissing, bool whatIf, bool verbose, ref string error ) |
︙ | ︙ | |||
4258 4259 4260 4261 4262 4263 4264 | // // NOTE: Grab the supported versions of this particular // framework. // VersionList frameworkVersionList; | > > > > > > > > > > > | | | | | > | 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 | // // NOTE: Grab the supported versions of this particular // framework. // VersionList frameworkVersionList; if (version != null) { // // NOTE: Manual override of the *ONE* framework version // to process. // frameworkVersionList = new VersionList(); frameworkVersionList.Add(new Version(version)); } else { if (!frameworkList.Versions.TryGetValue( frameworkName, out frameworkVersionList) || (frameworkVersionList == null)) { continue; } } foreach (Version frameworkVersion in frameworkVersionList) { TraceOps.DebugAndTrace(TracePriority.Lower, debugCallback, traceCallback, String.Format( "frameworkName = {0}, frameworkVersion = {1}, " + |
︙ | ︙ | |||
4491 4492 4493 4494 4495 4496 4497 | XmlElement addElement = document.SelectSingleNode( String.Format(XPathForAddElement, invariant)) as XmlElement; if (addElement == null) { string[] elementNames = { | | | | 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 | XmlElement addElement = document.SelectSingleNode( String.Format(XPathForAddElement, invariant)) as XmlElement; if (addElement == null) { string[] elementNames = { "system.data", "DbProviderFactories" }; XmlElement previousElement = document.DocumentElement; /* configuration */ foreach (string elementName in elementNames) { addElement = previousElement.SelectSingleNode( |
︙ | ︙ | |||
4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 | debugCallback, traceCallback, String.Format( "addElement = {0}", ForDisplay(addElement)), traceCategory); if (!whatIf) document.Save(fileName); saved = true; } return true; } /////////////////////////////////////////////////////////////////////// | > > | 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 | debugCallback, traceCallback, String.Format( "addElement = {0}", ForDisplay(addElement)), traceCategory); if (!whatIf) document.Save(fileName); filesModified++; saved = true; } return true; } /////////////////////////////////////////////////////////////////////// |
︙ | ︙ | |||
4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 | debugCallback, traceCallback, String.Format( "addElement = {0}, removeElement = {1}", ForDisplay(addElement), ForDisplay(removeElement)), traceCategory); if (!whatIf) document.Save(fileName); saved = true; } return true; } | > > | 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 | debugCallback, traceCallback, String.Format( "addElement = {0}, removeElement = {1}", ForDisplay(addElement), ForDisplay(removeElement)), traceCategory); if (!whatIf) document.Save(fileName); filesModified++; saved = true; } return true; } |
︙ | ︙ | |||
5753 5754 5755 5756 5757 5758 5759 | #region .NET AssemblyFolders if (configuration.HasFlags( InstallFlags.AssemblyFolders, true)) { if (!ForEachFrameworkRegistry(registry, frameworkList, ProcessAssemblyFolders, | | | 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 | #region .NET AssemblyFolders if (configuration.HasFlags( InstallFlags.AssemblyFolders, true)) { if (!ForEachFrameworkRegistry(registry, frameworkList, ProcessAssemblyFolders, configuration.RegistryVersion, directoryData, NetFxIs32BitOnly || configuration.Wow64, configuration.ThrowOnMissing, configuration.WhatIf, configuration.Verbose, ref error)) { TraceOps.ShowMessage(TracePriority.Highest, debugCallback, traceCallback, thisAssembly, |
︙ | ︙ | |||
5783 5784 5785 5786 5787 5788 5789 | if (configuration.HasFlags( InstallFlags.DbProviderFactory, true)) { bool saved = false; if (!ForEachFrameworkConfig(registry, frameworkList, ProcessDbProviderFactory, | > | | | 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 | if (configuration.HasFlags( InstallFlags.DbProviderFactory, true)) { bool saved = false; if (!ForEachFrameworkConfig(registry, frameworkList, ProcessDbProviderFactory, configuration.ConfigVersion, InvariantName, ProviderName, Description, FactoryTypeName, assemblyName, directoryData, NetFxIs32BitOnly || configuration.Wow64, configuration.ThrowOnMissing, configuration.WhatIf, configuration.Verbose, ref saved, ref error)) { TraceOps.ShowMessage(TracePriority.Highest, debugCallback, traceCallback, thisAssembly, |
︙ | ︙ | |||
5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 | "subKeysCreated = {0}, subKeysDeleted = {1}, " + "keyValuesSet = {2}, keyValuesDeleted = {3}", ForDisplay(RegistryHelper.SubKeysCreated), ForDisplay(RegistryHelper.SubKeysDeleted), ForDisplay(RegistryHelper.KeyValuesSet), ForDisplay(RegistryHelper.KeyValuesDeleted)), traceCategory); #endregion /////////////////////////////////////////////////////////// TraceOps.DebugAndTrace(TracePriority.MediumHigh, debugCallback, traceCallback, "Success.", traceCategory); | > > > > > > > | 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 | "subKeysCreated = {0}, subKeysDeleted = {1}, " + "keyValuesSet = {2}, keyValuesDeleted = {3}", ForDisplay(RegistryHelper.SubKeysCreated), ForDisplay(RegistryHelper.SubKeysDeleted), ForDisplay(RegistryHelper.KeyValuesSet), ForDisplay(RegistryHelper.KeyValuesDeleted)), traceCategory); TraceOps.DebugAndTrace(TracePriority.MediumHigh, debugCallback, traceCallback, String.Format( "filesCreated = {0}, filesModified = {1}, " + "filesDeleted = {2}", ForDisplay(filesCreated), ForDisplay(filesModified), ForDisplay(filesDeleted)), traceCategory); #endregion /////////////////////////////////////////////////////////// TraceOps.DebugAndTrace(TracePriority.MediumHigh, debugCallback, traceCallback, "Success.", traceCategory); |
︙ | ︙ |