Index: Externals/Eagle/lib/Eagle1.0/vendor.eagle
==================================================================
--- Externals/Eagle/lib/Eagle1.0/vendor.eagle
+++ Externals/Eagle/lib/Eagle1.0/vendor.eagle
@@ -183,12 +183,12 @@
#
checkForTestOverrides stdout [expr {[info exists test_overrides] ? \
$test_overrides : [list binary_directory build_base_directory \
build_directory common_directory connection_flags database_directory \
datetime_format release_version scratch_directory temporary_directory \
- test_configuration test_configurations test_constraints \
- test_machine test_overrides test_platform test_suite test_year \
+ test_configuration test_configurations test_constraints test_machine \
+ test_net_fx test_overrides test_platform test_suite test_year \
test_years test_year_clr_v2 test_year_clr_v4 vendor_directory]}] false
#
# NOTE: Set the name of the running test suite, if necessary.
#
Index: SQLite.Beta.nuspec
==================================================================
--- SQLite.Beta.nuspec
+++ SQLite.Beta.nuspec
@@ -19,10 +19,21 @@
http://system.data.sqlite.org/images/sqlite32.png
http://www.sqlite.org/copyright.html
sqlite database ado.net provider interop
Public Domain
+
+
+
+
+
+
+
+
+
+
+
Index: SQLite.MSIL.nuspec
==================================================================
--- SQLite.MSIL.nuspec
+++ SQLite.MSIL.nuspec
@@ -18,10 +18,21 @@
http://system.data.sqlite.org/images/sqlite32.png
http://www.sqlite.org/copyright.html
sqlite database ado.net provider interop
Public Domain
+
+
+
+
+
+
+
+
+
+
+
Index: SQLite.nuspec
==================================================================
--- SQLite.nuspec
+++ SQLite.nuspec
@@ -19,10 +19,21 @@
http://system.data.sqlite.org/images/sqlite32.png
http://www.sqlite.org/copyright.html
sqlite database ado.net provider interop
Public Domain
+
+
+
+
+
+
+
+
+
+
+
Index: SQLite.x64.nuspec
==================================================================
--- SQLite.x64.nuspec
+++ SQLite.x64.nuspec
@@ -18,10 +18,21 @@
http://system.data.sqlite.org/images/sqlite32.png
http://www.sqlite.org/copyright.html
sqlite database ado.net provider interop
Public Domain
+
+
+
+
+
+
+
+
+
+
+
Index: SQLite.x86.nuspec
==================================================================
--- SQLite.x86.nuspec
+++ SQLite.x86.nuspec
@@ -18,10 +18,21 @@
http://system.data.sqlite.org/images/sqlite32.png
http://www.sqlite.org/copyright.html
sqlite database ado.net provider interop
Public Domain
+
+
+
+
+
+
+
+
+
+
+
Index: Setup/clean.bat
==================================================================
--- Setup/clean.bat
+++ Setup/clean.bat
@@ -240,10 +240,26 @@
)
) ELSE (
%_AECHO% No files matching "%SOURCE%\Doc\SQLite.NET.chw" exist.
%_AECHO%.
)
+
+IF EXIST "%SOURCE%\Externals\Eagle\bin\EntityFramework.*" (
+ %__ECHO% DEL /Q "%SOURCE%\Externals\Eagle\bin\EntityFramework.*"
+
+ IF ERRORLEVEL 1 (
+ ECHO Could not delete "%SOURCE%\Externals\Eagle\bin\EntityFramework.*".
+ ECHO.
+ GOTO errors
+ ) ELSE (
+ %_AECHO% Deleted "%SOURCE%\Externals\Eagle\bin\EntityFramework.*".
+ %_AECHO%.
+ )
+) ELSE (
+ %_AECHO% No files matching "%SOURCE%\Externals\Eagle\bin\EntityFramework.*" exist.
+ %_AECHO%.
+)
IF EXIST "%SOURCE%\Externals\Eagle\bin\sqlite3.*" (
%__ECHO% DEL /Q "%SOURCE%\Externals\Eagle\bin\sqlite3.*"
IF ERRORLEVEL 1 (
Index: System.Data.SQLite.Linq/Properties/Resources.Designer.cs
==================================================================
--- System.Data.SQLite.Linq/Properties/Resources.Designer.cs
+++ System.Data.SQLite.Linq/Properties/Resources.Designer.cs
@@ -1,9 +1,9 @@
/********************************************************
* ADO.NET 2.0 Data Provider for SQLite Version 3.X
* Written by Robert Simpson (robert@blackcastlesoft.com)
- *
+ *
* Released to the public domain, use at your own risk!
********************************************************/
//------------------------------------------------------------------------------
//
@@ -13,14 +13,18 @@
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
-namespace System.Data.SQLite.Properties {
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6.Properties
+#else
+namespace System.Data.SQLite.Linq.Properties
+#endif
+{
using System;
-
-
+
///
/// A strongly-typed resource class, for looking up localized strings, etc.
///
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
@@ -28,33 +32,33 @@
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal sealed class Resources {
-
+
private static global::System.Resources.ResourceManager resourceMan;
-
+
private static global::System.Globalization.CultureInfo resourceCulture;
-
+
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
-
+
///
/// Returns the cached ResourceManager instance used by this class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("System.Data.SQLite.Properties.Resources", typeof(Resources).Assembly);
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("System.Data.SQLite.Properties", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
-
+
///
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
@@ -64,14 +68,14 @@
}
set {
resourceCulture = value;
}
}
-
+
///
/// Looks up a localized string similar to CREATE TEMP VIEW SCHEMACONSTRAINTCOLUMNS AS
- ///SELECT CONSTRAINT_CATALOG, NULL AS CONSTRAINT_SCHEMA, CONSTRAINT_NAME, TABLE_CATALOG, NULL AS TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME
+ ///SELECT CONSTRAINT_CATALOG, NULL AS CONSTRAINT_SCHEMA, CONSTRAINT_NAME, TABLE_CATALOG, NULL AS TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME
///FROM TEMP.SCHEMAINDEXCOLUMNS
///UNION
///SELECT CONSTRAINT_CATALOG, NULL, CONSTRAINT_NAME, TABLE_CATALOG, NULL, TABLE_NAME, FKEY_FROM_COLUMN
///FROM TEMP.SCHEMAFOREIGNKEYS;.
///
@@ -78,17 +82,17 @@
internal static string SQL_CONSTRAINTCOLUMNS {
get {
return ResourceManager.GetString("SQL_CONSTRAINTCOLUMNS", resourceCulture);
}
}
-
+
///
/// Looks up a localized string similar to CREATE TEMP VIEW SCHEMACONSTRAINTS AS
///SELECT INDEX_CATALOG AS CONSTRAINT_CATALOG, NULL AS CONSTRAINT_SCHEMA, INDEX_NAME AS CONSTRAINT_NAME, TABLE_CATALOG, NULL AS TABLE_SCHEMA, TABLE_NAME, 'PRIMARY KEY' AS CONSTRAINT_TYPE, 0 AS IS_DEFERRABLE, 0 AS INITIALLY_DEFERRED, NULL AS CHECK_CLAUSE
///FROM TEMP.SCHEMAINDEXES WHERE PRIMARY_KEY = 1
///UNION
- ///SELECT INDEX_CATALOG, NULL, INDEX_NAME, TABLE_CATALOG, NULL, TABLE_NAME, 'UNIQUE', 0, 0, NULL
+ ///SELECT INDEX_CATALOG, NULL, INDEX_NAME, TABLE_CATALOG, NULL, TABLE_NAME, 'UNIQUE', 0, 0, NULL
///FROM TEMP.SCHEMAINDEXES WHERE PRIMARY_KEY = 0 AND [UNIQUE] = 1
///UNION
/// [rest of string was truncated]";.
///
internal static string SQL_CONSTRAINTS {
Index: System.Data.SQLite.Linq/SQL Generation/DmlSqlGenerator.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/DmlSqlGenerator.cs
+++ System.Data.SQLite.Linq/SQL Generation/DmlSqlGenerator.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
Index: System.Data.SQLite.Linq/SQL Generation/ISqlFragment.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/ISqlFragment.cs
+++ System.Data.SQLite.Linq/SQL Generation/ISqlFragment.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
#if USE_ENTITY_FRAMEWORK_6
using System.Data.Entity.Core.Common.CommandTrees;
#else
using System.Data.Common.CommandTrees;
Index: System.Data.SQLite.Linq/SQL Generation/InternalBase.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/InternalBase.cs
+++ System.Data.SQLite.Linq/SQL Generation/InternalBase.cs
@@ -9,11 +9,15 @@
#if NET_40 || NET_45 || NET_451
using System.Runtime;
#endif
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
internal abstract class InternalBase
{
// Methods
#if NET_40 || NET_45 || NET_451
Index: System.Data.SQLite.Linq/SQL Generation/JoinSymbol.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/JoinSymbol.cs
+++ System.Data.SQLite.Linq/SQL Generation/JoinSymbol.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
#if USE_ENTITY_FRAMEWORK_6
Index: System.Data.SQLite.Linq/SQL Generation/KeyToListMap.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/KeyToListMap.cs
+++ System.Data.SQLite.Linq/SQL Generation/KeyToListMap.cs
@@ -12,11 +12,15 @@
#if NET_40 || NET_45 || NET_451
using System.Runtime;
#endif
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
internal sealed class KeyToListMap : InternalBase
{
// Fields
private Dictionary> m_map;
Index: System.Data.SQLite.Linq/SQL Generation/MetadataHelpers.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/MetadataHelpers.cs
+++ System.Data.SQLite.Linq/SQL Generation/MetadataHelpers.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Data;
using System.Collections.Generic;
using System.Diagnostics;
Index: System.Data.SQLite.Linq/SQL Generation/SkipClause.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SkipClause.cs
+++ System.Data.SQLite.Linq/SQL Generation/SkipClause.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System.Globalization;
///
/// SkipClause represents the a SKIP expression in a SqlSelectStatement.
Index: System.Data.SQLite.Linq/SQL Generation/SqlBuilder.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SqlBuilder.cs
+++ System.Data.SQLite.Linq/SQL Generation/SqlBuilder.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
using System.Diagnostics;
Index: System.Data.SQLite.Linq/SQL Generation/SqlChecker.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SqlChecker.cs
+++ System.Data.SQLite.Linq/SQL Generation/SqlChecker.cs
@@ -3,11 +3,15 @@
* Written by Robert Simpson (robert@blackcastlesoft.com)
*
* Released to the public domain, use at your own risk!
********************************************************/
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
#if USE_ENTITY_FRAMEWORK_6
Index: System.Data.SQLite.Linq/SQL Generation/SqlGenerator.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SqlGenerator.cs
+++ System.Data.SQLite.Linq/SQL Generation/SqlGenerator.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Linq;
using System.Diagnostics;
using System.Globalization;
Index: System.Data.SQLite.Linq/SQL Generation/SqlSelectStatement.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SqlSelectStatement.cs
+++ System.Data.SQLite.Linq/SQL Generation/SqlSelectStatement.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System.Collections.Generic;
using System.Diagnostics;
#if USE_ENTITY_FRAMEWORK_6
Index: System.Data.SQLite.Linq/SQL Generation/SqlWriter.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SqlWriter.cs
+++ System.Data.SQLite.Linq/SQL Generation/SqlWriter.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System.IO;
using System.Text;
///
Index: System.Data.SQLite.Linq/SQL Generation/StringUtil.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/StringUtil.cs
+++ System.Data.SQLite.Linq/SQL Generation/StringUtil.cs
@@ -12,11 +12,15 @@
#if NET_40 || NET_45 || NET_451
using System.Runtime;
#endif
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
internal static class StringUtil
{
// Fields
private const string s_defaultDelimiter = ", ";
Index: System.Data.SQLite.Linq/SQL Generation/Symbol.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/Symbol.cs
+++ System.Data.SQLite.Linq/SQL Generation/Symbol.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
#if USE_ENTITY_FRAMEWORK_6
Index: System.Data.SQLite.Linq/SQL Generation/SymbolPair.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SymbolPair.cs
+++ System.Data.SQLite.Linq/SQL Generation/SymbolPair.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System.Diagnostics;
#if USE_ENTITY_FRAMEWORK_6
using System.Data.Entity.Core.Common.CommandTrees;
Index: System.Data.SQLite.Linq/SQL Generation/SymbolTable.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/SymbolTable.cs
+++ System.Data.SQLite.Linq/SQL Generation/SymbolTable.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Collections.Generic;
#if USE_ENTITY_FRAMEWORK_6
Index: System.Data.SQLite.Linq/SQL Generation/TopClause.cs
==================================================================
--- System.Data.SQLite.Linq/SQL Generation/TopClause.cs
+++ System.Data.SQLite.Linq/SQL Generation/TopClause.cs
@@ -6,11 +6,15 @@
// or License.txt for details.
// All rights reserved.
//
//---------------------------------------------------------------------
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Globalization;
///
Index: System.Data.SQLite.Linq/SQLiteProviderFactory.cs
==================================================================
--- System.Data.SQLite.Linq/SQLiteProviderFactory.cs
+++ System.Data.SQLite.Linq/SQLiteProviderFactory.cs
@@ -3,20 +3,23 @@
* Written by Robert Simpson (robert@blackcastlesoft.com)
*
* Released to the public domain, use at your own risk!
********************************************************/
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Data.Common;
///
/// SQLite implementation of .
///
- public sealed partial class SQLiteProviderFactory :
- DbProviderFactory, IDisposable
+ public sealed class SQLiteProviderFactory : DbProviderFactory, IDisposable
{
#region Public Static Data
///
/// Static instance member which returns an instanced
/// class.
@@ -128,11 +131,14 @@
private bool disposed;
private void CheckDisposed() /* throw */
{
#if THROW_ON_DISPOSED
if (disposed)
- throw new ObjectDisposedException(typeof(SQLiteProviderFactory).Name);
+ {
+ throw new ObjectDisposedException(
+ typeof(SQLiteProviderFactory).Name);
+ }
#endif
}
///////////////////////////////////////////////////////////////////////
Index: System.Data.SQLite.Linq/SQLiteProviderManifest.cs
==================================================================
--- System.Data.SQLite.Linq/SQLiteProviderManifest.cs
+++ System.Data.SQLite.Linq/SQLiteProviderManifest.cs
@@ -3,11 +3,15 @@
* Written by Robert Simpson (robert@blackcastlesoft.com)
*
* Released to the public domain, use at your own risk!
********************************************************/
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Data;
using System.Reflection;
using System.IO;
@@ -43,11 +47,11 @@
_dateFormat = (SQLiteDateFormats)Enum.Parse(typeof(SQLiteDateFormats), manifestToken, true);
}
internal static XmlReader GetProviderManifest()
{
- return GetXmlResource("System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml");
+ return GetXmlResource("System.Data.SQLite.SQLiteProviderServices.ProviderManifest.xml");
}
///
/// Returns manifest information for the provider
///
@@ -302,16 +306,16 @@
}
}
private XmlReader GetStoreSchemaMapping()
{
- return GetXmlResource("System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaMapping.msl");
+ return GetXmlResource("System.Data.SQLite.SQLiteProviderServices.StoreSchemaMapping.msl");
}
private XmlReader GetStoreSchemaDescription()
{
- return GetXmlResource("System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl");
+ return GetXmlResource("System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl");
}
internal static XmlReader GetXmlResource(string resourceName)
{
Assembly executingAssembly = Assembly.GetExecutingAssembly();
Index: System.Data.SQLite.Linq/SQLiteProviderServices.cs
==================================================================
--- System.Data.SQLite.Linq/SQLiteProviderServices.cs
+++ System.Data.SQLite.Linq/SQLiteProviderServices.cs
@@ -3,27 +3,31 @@
* Written by Robert Simpson (robert@blackcastlesoft.com)
*
* Released to the public domain, use at your own risk!
********************************************************/
-namespace System.Data.SQLite
+#if USE_ENTITY_FRAMEWORK_6
+namespace System.Data.SQLite.EF6
+#else
+namespace System.Data.SQLite.Linq
+#endif
{
using System;
using System.Data.Common;
using System.Diagnostics;
using System.Collections.Generic;
using System.Text;
- using System.Globalization;
-
-#if USE_ENTITY_FRAMEWORK_6
- using System.Data.Entity.Core.Common;
- using System.Data.Entity.Core.Metadata.Edm;
- using System.Data.Entity.Core.Common.CommandTrees;
-#else
- using System.Data.Metadata.Edm;
- using System.Data.Common.CommandTrees;
-#endif
+ using System.Globalization;
+
+#if USE_ENTITY_FRAMEWORK_6
+ using System.Data.Entity.Core.Common;
+ using System.Data.Entity.Core.Metadata.Edm;
+ using System.Data.Entity.Core.Common.CommandTrees;
+#else
+ using System.Data.Metadata.Edm;
+ using System.Data.Common.CommandTrees;
+#endif
internal sealed class SQLiteProviderServices : DbProviderServices, ISQLiteSchemaExtensions
{
internal static readonly SQLiteProviderServices Instance = new SQLiteProviderServices();
Index: System.Data.SQLite.Linq/System.Data.SQLite.Core.2010.csproj
==================================================================
--- System.Data.SQLite.Linq/System.Data.SQLite.Core.2010.csproj
+++ System.Data.SQLite.Linq/System.Data.SQLite.Core.2010.csproj
@@ -88,30 +88,30 @@
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.Common.ConceptualSchemaDefinition.csdl
+ System.Data.SQLite.Common.ConceptualSchemaDefinition.csdl
- System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml
+ System.Data.SQLite.SQLiteProviderServices.ProviderManifest.xml
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaMapping.msl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaMapping.msl
- System.Data.SQLite.Properties.Resources.resources
+ System.Data.SQLite.Properties.resources
ResXFileCodeGenerator
Resources.Designer.cs
Index: System.Data.SQLite.Linq/System.Data.SQLite.Core.2012.csproj
==================================================================
--- System.Data.SQLite.Linq/System.Data.SQLite.Core.2012.csproj
+++ System.Data.SQLite.Linq/System.Data.SQLite.Core.2012.csproj
@@ -86,30 +86,30 @@
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.Common.ConceptualSchemaDefinition.csdl
+ System.Data.SQLite.Common.ConceptualSchemaDefinition.csdl
- System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml
+ System.Data.SQLite.SQLiteProviderServices.ProviderManifest.xml
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaMapping.msl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaMapping.msl
- System.Data.SQLite.Properties.Resources.resources
+ System.Data.SQLite.Properties.resources
ResXFileCodeGenerator
Resources.Designer.cs
Index: System.Data.SQLite.Linq/System.Data.SQLite.Core.2013.csproj
==================================================================
--- System.Data.SQLite.Linq/System.Data.SQLite.Core.2013.csproj
+++ System.Data.SQLite.Linq/System.Data.SQLite.Core.2013.csproj
@@ -86,30 +86,30 @@
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.Common.ConceptualSchemaDefinition.csdl
+ System.Data.SQLite.Common.ConceptualSchemaDefinition.csdl
- System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml
+ System.Data.SQLite.SQLiteProviderServices.ProviderManifest.xml
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaMapping.msl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaMapping.msl
- System.Data.SQLite.Properties.Resources.resources
+ System.Data.SQLite.Properties.resources
ResXFileCodeGenerator
Resources.Designer.cs
Index: System.Data.SQLite.Linq/System.Data.SQLite.Linq.2008.csproj
==================================================================
--- System.Data.SQLite.Linq/System.Data.SQLite.Linq.2008.csproj
+++ System.Data.SQLite.Linq/System.Data.SQLite.Linq.2008.csproj
@@ -76,25 +76,25 @@
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaDefinition.ssdl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaDefinition.ssdl
- System.Data.SQLite.Resources.Common.ConceptualSchemaDefinition.csdl
+ System.Data.SQLite.Common.ConceptualSchemaDefinition.csdl
- System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml
+ System.Data.SQLite.SQLiteProviderServices.ProviderManifest.xml
- System.Data.SQLite.Resources.SQLiteProviderServices.StoreSchemaMapping.msl
+ System.Data.SQLite.SQLiteProviderServices.StoreSchemaMapping.msl
- System.Data.SQLite.Properties.Resources.resources
+ System.Data.SQLite.Properties.resources
ResXFileCodeGenerator
Resources.Designer.cs
Index: System.Data.SQLite/LINQ/SQLiteFactory_Linq.cs
==================================================================
--- System.Data.SQLite/LINQ/SQLiteFactory_Linq.cs
+++ System.Data.SQLite/LINQ/SQLiteFactory_Linq.cs
@@ -65,11 +65,11 @@
private object GetSQLiteProviderServicesInstance()
{
if (_sqliteServices == null)
{
Version version = this.GetType().Assembly.GetName().Version;
- Type type = Type.GetType(String.Format(CultureInfo.InvariantCulture, "System.Data.SQLite.SQLiteProviderServices, System.Data.SQLite.Linq, Version={0}, Culture=neutral, PublicKeyToken=db937bc2d44ff139", version), false);
+ Type type = Type.GetType(String.Format(CultureInfo.InvariantCulture, "System.Data.SQLite.Linq.SQLiteProviderServices, System.Data.SQLite.Linq, Version={0}, Culture=neutral, PublicKeyToken=db937bc2d44ff139", version), false);
if (type != null)
{
FieldInfo field = type.GetField("Instance", BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance);
_sqliteServices = field.GetValue(null);
Index: Tests/Installer_Test_Vs2010.log
==================================================================
--- Tests/Installer_Test_Vs2010.log
+++ Tests/Installer_Test_Vs2010.log
@@ -1,68 +1,70 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
Installer.exe: #3: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #4: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #5: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #6: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", writable = True
-Installer.exe: #9: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #10: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
-Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #14: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #15: Installer.AddDbProviderFactory: addElement =
-Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #17: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", writable = True
+Installer.exe: #11: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #12: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
+Installer.exe: #13: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #16: Installer.RemoveDbProviderFactory: addElement = , removeElement =
+Installer.exe: #17: Installer.AddDbProviderFactory: addElement =
Installer.exe: #18: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Packages", writable = True
-Installer.exe: #20: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #21: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
-Installer.exe: #22: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
-Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
-Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
-Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
-Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
-Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
-Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
-Installer.exe: #30: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
-Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\Toolbox", name = "Default Items", value = 3
-Installer.exe: #32: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Menus", writable = True
-Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
-Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Services", writable = True
-Installer.exe: #35: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #36: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #37: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
-Installer.exe: #38: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #39: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #19: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #20: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Packages", writable = True
+Installer.exe: #22: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
+Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
+Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
+Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
+Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
+Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
+Installer.exe: #30: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
+Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
+Installer.exe: #32: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
+Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages\Toolbox", name = "Default Items", value = 3
+Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Menus", writable = True
+Installer.exe: #35: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
+Installer.exe: #36: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Services", writable = True
+Installer.exe: #37: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #38: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #39: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
Installer.exe: #40: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #41: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataSources", writable = True
-Installer.exe: #42: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #43: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
-Installer.exe: #44: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #45: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #46: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #47: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #41: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #42: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #43: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataSources", writable = True
+Installer.exe: #44: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #45: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
+Installer.exe: #46: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #47: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
Installer.exe: #48: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #49: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #50: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #51: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
-Installer.exe: #52: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
-Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
-Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
-Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #58: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
-Installer.exe: #59: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
-Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
-Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
-Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
-Installer.exe: #63: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #64: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
-Installer.exe: #65: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #66: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
-Installer.exe: #67: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
-Installer.exe: #68: Installer.Main: Success.
+Installer.exe: #49: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #50: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #51: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #52: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
+Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
+Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
+Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
+Installer.exe: #58: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #59: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
+Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
+Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
+Installer.exe: #63: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
+Installer.exe: #64: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
+Installer.exe: #65: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #66: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #67: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #68: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
+Installer.exe: #69: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
+Installer.exe: #70: Installer.Main: Success.
Index: Tests/Installer_Test_Vs2012.log
==================================================================
--- Tests/Installer_Test_Vs2012.log
+++ Tests/Installer_Test_Vs2012.log
@@ -1,68 +1,70 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
Installer.exe: #3: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #4: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #5: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #6: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709", writable = False
Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", writable = True
-Installer.exe: #9: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #10: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
-Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #14: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #15: Installer.AddDbProviderFactory: addElement =
-Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #17: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", writable = True
+Installer.exe: #11: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #12: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
+Installer.exe: #13: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #16: Installer.RemoveDbProviderFactory: addElement = , removeElement =
+Installer.exe: #17: Installer.AddDbProviderFactory: addElement =
Installer.exe: #18: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Packages", writable = True
-Installer.exe: #20: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #21: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
-Installer.exe: #22: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
-Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
-Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
-Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
-Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
-Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
-Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
-Installer.exe: #30: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
-Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\Toolbox", name = "Default Items", value = 3
-Installer.exe: #32: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Menus", writable = True
-Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
-Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Services", writable = True
-Installer.exe: #35: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #36: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #37: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
-Installer.exe: #38: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #39: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #19: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #20: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Packages", writable = True
+Installer.exe: #22: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
+Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
+Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
+Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
+Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
+Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
+Installer.exe: #30: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
+Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
+Installer.exe: #32: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
+Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages\Toolbox", name = "Default Items", value = 3
+Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Menus", writable = True
+Installer.exe: #35: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
+Installer.exe: #36: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Services", writable = True
+Installer.exe: #37: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #38: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #39: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
Installer.exe: #40: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #41: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataSources", writable = True
-Installer.exe: #42: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #43: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
-Installer.exe: #44: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #45: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #46: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #47: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #41: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #42: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #43: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataSources", writable = True
+Installer.exe: #44: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #45: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
+Installer.exe: #46: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #47: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
Installer.exe: #48: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #49: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #50: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #51: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
-Installer.exe: #52: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
-Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
-Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
-Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #58: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
-Installer.exe: #59: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
-Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
-Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
-Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
-Installer.exe: #63: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #64: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
-Installer.exe: #65: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #66: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
-Installer.exe: #67: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
-Installer.exe: #68: Installer.Main: Success.
+Installer.exe: #49: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #50: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #51: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #52: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
+Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
+Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
+Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
+Installer.exe: #58: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #59: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
+Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
+Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
+Installer.exe: #63: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
+Installer.exe: #64: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
+Installer.exe: #65: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #66: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #67: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #68: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
+Installer.exe: #69: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
+Installer.exe: #70: Installer.Main: Success.
Index: Tests/Installer_Test_Vs2013.log
==================================================================
--- Tests/Installer_Test_Vs2013.log
+++ Tests/Installer_Test_Vs2013.log
@@ -1,68 +1,70 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
Installer.exe: #3: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #4: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #5: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #6: Installer.Main: GacInstall: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1", writable = False
Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", writable = True
-Installer.exe: #9: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #10: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
-Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #14: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #15: Installer.AddDbProviderFactory: addElement =
-Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #17: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", writable = True
+Installer.exe: #11: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #12: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx\System.Data.SQLite", name = , value = "[file nativename [getBuildDirectory]]"
+Installer.exe: #13: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #16: Installer.RemoveDbProviderFactory: addElement = , removeElement =
+Installer.exe: #17: Installer.AddDbProviderFactory: addElement =
Installer.exe: #18: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Packages", writable = True
-Installer.exe: #20: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #21: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
-Installer.exe: #22: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
-Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
-Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
-Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
-Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
-Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
-Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
-Installer.exe: #30: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
-Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\Toolbox", name = "Default Items", value = 3
-Installer.exe: #32: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Menus", writable = True
-Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
-Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Services", writable = True
-Installer.exe: #35: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #36: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #37: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
-Installer.exe: #38: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #39: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #19: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #20: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Packages", writable = True
+Installer.exe: #22: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #23: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = , value = "System.Data.SQLite Designer Package"
+Installer.exe: #24: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "Class", value = "SQLite.Designer.SQLitePackage"
+Installer.exe: #25: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #26: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ID", value = 400
+Installer.exe: #27: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "InprocServer32", value = "[file nativename [file join $::env(windir) [expr {$is64 ? "SysWOW64" : "system32"}] mscoree.dll]]"
+Installer.exe: #28: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "CompanyName", value = "http://system.data.sqlite.org/"
+Installer.exe: #29: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "MinEdition", value = "standard"
+Installer.exe: #30: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductName", value = "System.Data.SQLite Designer Package"
+Installer.exe: #31: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", name = "ProductVersion", value = "1.0"
+Installer.exe: #32: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", subKeyName = "Toolbox"
+Installer.exe: #33: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages\Toolbox", name = "Default Items", value = 3
+Installer.exe: #34: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Menus", writable = True
+Installer.exe: #35: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}", value = ", 1000, 3"
+Installer.exe: #36: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Services", writable = True
+Installer.exe: #37: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #38: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = , value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #39: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services\{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}", name = "Name", value = "System.Data.SQLite Designer Service"
Installer.exe: #40: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #41: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataSources", writable = True
-Installer.exe: #42: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #43: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
-Installer.exe: #44: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #45: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #46: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #47: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #41: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #42: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #43: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataSources", writable = True
+Installer.exe: #44: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #45: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = , value = "System.Data.SQLite Database File"
+Installer.exe: #46: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", name = "DefaultProvider", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #47: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}", subKeyName = "SupportingProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
Installer.exe: #48: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #49: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #50: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #51: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
-Installer.exe: #52: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
-Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
-Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
-Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #58: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
-Installer.exe: #59: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
-Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
-Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
-Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
-Installer.exe: #63: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #64: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
-Installer.exe: #65: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #66: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
-Installer.exe: #67: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
-Installer.exe: #68: Installer.Main: Success.
+Installer.exe: #49: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #50: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #51: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #52: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #53: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = , value = ".NET Framework Data Provider for SQLite"
+Installer.exe: #54: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Assembly", value = "SQLite.Designer, Version=[file version $sqliteDesignerDllFile], Culture=neutral, PublicKeyToken=db937bc2d44ff139"
+Installer.exe: #55: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "AssociatedSource", value = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
+Installer.exe: #56: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "InvariantName", value = "System.Data.SQLite"
+Installer.exe: #57: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "Technology", value = "{77ab9a9d-78b9-4ba7-91ac-873f5338f1d2}"
+Installer.exe: #58: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "CodeBase", value = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
+Installer.exe: #59: RegistryHelper.SetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", name = "FactoryService", value = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
+Installer.exe: #60: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionUIControl"
+Installer.exe: #61: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionProperties"
+Installer.exe: #62: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataConnectionSupport"
+Installer.exe: #63: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataObjectSupport"
+Installer.exe: #64: RegistryHelper.CreateSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders\{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}", subKeyName = "SupportedObjects\DataViewSupport"
+Installer.exe: #65: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #66: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #67: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #68: Installer.Main: subKeysCreated = 12, subKeysDeleted = 1, keyValuesSet = 23, keyValuesDeleted = 0
+Installer.exe: #69: Installer.Main: filesCreated = 1, filesModified = 2, filesDeleted = 0
+Installer.exe: #70: Installer.Main: Success.
Index: Tests/Uninstaller_Test_Vs2010.log
==================================================================
--- Tests/Uninstaller_Test_Vs2010.log
+++ Tests/Uninstaller_Test_Vs2010.log
@@ -1,36 +1,38 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #3: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #9: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #10: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #11: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #3: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #5: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
+Installer.exe: #6: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", writable = True
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #12: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #13: Installer.RemoveDbProviderFactory: addElement = , removeElement =
Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #15: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Packages", writable = True
-Installer.exe: #16: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Menus", writable = True
-Installer.exe: #18: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Services", writable = True
-Installer.exe: #20: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #22: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Packages", writable = True
+Installer.exe: #18: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Menus", writable = True
+Installer.exe: #20: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "Services", writable = True
+Installer.exe: #22: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
Installer.exe: #23: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #24: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataSources", writable = True
-Installer.exe: #25: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #27: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #24: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #25: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataSources", writable = True
+Installer.exe: #27: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
Installer.exe: #28: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #29: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #30: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
-Installer.exe: #32: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
-Installer.exe: #33: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #34: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
-Installer.exe: #35: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
-Installer.exe: #36: Installer.Main: Success.
+Installer.exe: #29: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #30: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #32: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #33: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\10.0", writable = False
+Installer.exe: #34: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\10.0", name = "InstallDir", defaultValue =
+Installer.exe: #35: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 10.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #36: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
+Installer.exe: #37: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
+Installer.exe: #38: Installer.Main: Success.
Index: Tests/Uninstaller_Test_Vs2012.log
==================================================================
--- Tests/Uninstaller_Test_Vs2012.log
+++ Tests/Uninstaller_Test_Vs2012.log
@@ -1,36 +1,38 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #3: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #9: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #10: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #11: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #3: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #5: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
+Installer.exe: #6: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709", writable = False
+Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", writable = True
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #12: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #13: Installer.RemoveDbProviderFactory: addElement = , removeElement =
Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #15: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Packages", writable = True
-Installer.exe: #16: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Menus", writable = True
-Installer.exe: #18: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Services", writable = True
-Installer.exe: #20: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #22: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Packages", writable = True
+Installer.exe: #18: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Menus", writable = True
+Installer.exe: #20: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "Services", writable = True
+Installer.exe: #22: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
Installer.exe: #23: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #24: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataSources", writable = True
-Installer.exe: #25: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #27: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #24: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #25: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataSources", writable = True
+Installer.exe: #27: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
Installer.exe: #28: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #29: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #30: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
-Installer.exe: #32: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
-Installer.exe: #33: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #34: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
-Installer.exe: #35: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
-Installer.exe: #36: Installer.Main: Success.
+Installer.exe: #29: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #30: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #32: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #33: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\11.0", writable = False
+Installer.exe: #34: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\11.0", name = "InstallDir", defaultValue =
+Installer.exe: #35: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 11.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #36: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
+Installer.exe: #37: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
+Installer.exe: #38: Installer.Main: Success.
Index: Tests/Uninstaller_Test_Vs2013.log
==================================================================
--- Tests/Uninstaller_Test_Vs2013.log
+++ Tests/Uninstaller_Test_Vs2013.log
@@ -1,36 +1,38 @@
Installer.exe: #1: Configuration.Process: No actual changes will be made to this system because "what-if" mode is enabled.
Installer.exe: #2: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] SQLite.Designer.dll]]"
-Installer.exe: #3: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
-Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
-Installer.exe: #5: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1", writable = False
-Installer.exe: #6: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", writable = True
-Installer.exe: #7: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
-Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
-Installer.exe: #9: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
-Installer.exe: #10: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
-Installer.exe: #11: Installer.RemoveDbProviderFactory: addElement = , removeElement =
-Installer.exe: #12: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #13: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #3: Configuration.IsEf6AssemblyAvailable: Entity Framework 6 assembly was resolved.
+Installer.exe: #4: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.EF6.dll]]"
+Installer.exe: #5: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.Linq.dll]]"
+Installer.exe: #6: Installer.Main: GacRemove: assemblyPath = "[file nativename [file join [getBuildDirectory] System.Data.SQLite.dll]]"
+Installer.exe: #7: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1", writable = False
+Installer.exe: #8: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", writable = True
+Installer.exe: #9: RegistryHelper.DeleteSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework\v4.5.1\AssemblyFoldersEx", subKeyName = "System.Data.SQLite"
+Installer.exe: #10: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework\v4.0.30319", writable = False
+Installer.exe: #11: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\.NETFramework", writable = False
+Installer.exe: #12: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\.NETFramework", name = "InstallRoot", defaultValue =
+Installer.exe: #13: Installer.RemoveDbProviderFactory: addElement = , removeElement =
Installer.exe: #14: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #15: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Packages", writable = True
-Installer.exe: #16: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Menus", writable = True
-Installer.exe: #18: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
-Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Services", writable = True
-Installer.exe: #20: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
-Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #22: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #15: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #16: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #17: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Packages", writable = True
+Installer.exe: #18: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Packages", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #19: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Menus", writable = True
+Installer.exe: #20: RegistryHelper.DeleteValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Menus", name = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9c}"
+Installer.exe: #21: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "Services", writable = True
+Installer.exe: #22: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\Services", subKeyName = "{dcbe6c8d-0e57-4099-a183-98ff74c64d9d}"
Installer.exe: #23: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #24: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataSources", writable = True
-Installer.exe: #25: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
-Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #27: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #24: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #25: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #26: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataSources", writable = True
+Installer.exe: #27: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataSources", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c71}"
Installer.exe: #28: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #29: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataProviders", writable = True
-Installer.exe: #30: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
-Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
-Installer.exe: #32: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
-Installer.exe: #33: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
-Installer.exe: #34: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
-Installer.exe: #35: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
-Installer.exe: #36: Installer.Main: Success.
+Installer.exe: #29: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #30: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #31: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", subKeyName = "DataProviders", writable = True
+Installer.exe: #32: RegistryHelper.DeleteSubKeyTree: rootKey = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0\DataProviders", subKeyName = "{0ebaab6e-ca80-4b4a-8ddf-cbe6bf058c70}"
+Installer.exe: #33: RegistryHelper.OpenSubKey: rootKey = "HKEY_LOCAL_MACHINE", subKeyName = "Software${wow64}\Microsoft\VisualStudio\12.0", writable = False
+Installer.exe: #34: RegistryHelper.GetValue: key = "HKEY_LOCAL_MACHINE\Software${wow64}\Microsoft\VisualStudio\12.0", name = "InstallDir", defaultValue =
+Installer.exe: #35: Installer.AddVsDevEnvSetup: fileName = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE devenv.exe]]", arguments = "/setup", workingDirectory = "[file nativename [file join [expr {$is64 ? ${::env(ProgramFiles(x86))} : $::env(ProgramFiles)}] {Microsoft Visual Studio 12.0} Common7 IDE]]\", useShellExecute = False, redirectStandardOutput = True, redirectStandardError = True
+Installer.exe: #36: Installer.Main: subKeysCreated = 0, subKeysDeleted = 5, keyValuesSet = 0, keyValuesDeleted = 1
+Installer.exe: #37: Installer.Main: filesCreated = 1, filesModified = 1, filesDeleted = 0
+Installer.exe: #38: Installer.Main: Success.
Index: Tests/basic.eagle
==================================================================
--- Tests/basic.eagle
+++ Tests/basic.eagle
@@ -22,10 +22,11 @@
#
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
+set entityFrameworkDllFile [getBuildFileName EntityFramework.dll]
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set testExeFile [getBuildFileName test.exe]
set testLinqExeFile [getBuildFileName testlinq.exe]
@@ -35,10 +36,15 @@
testlinq northwindEF.db]]
#
# NOTE: Setup the test constraints specific to the tests in this file.
#
+if {![haveConstraint [appendArgs file_ \
+ [file tail $entityFrameworkDllFile]]]} then {
+ checkForFile $test_channel $entityFrameworkDllFile
+}
+
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteDllFile
}
@@ -188,11 +194,11 @@
} -cleanup {
catch {object invoke Console OutputEncoding $savedEncoding}
unset -nocomplain code output error savedEncoding encoding
} -constraints \
-{eagle monoToDo SQLite file_System.Data.SQLite.dll\
+{eagle monoToDo SQLite file_EntityFramework.dll file_System.Data.SQLite.dll\
file_System.Data.SQLite.EF6.dll file_testef6.exe file_northwindEF.db\
file_testlinq.out testExec} -result {0 True {}}}
###############################################################################
@@ -1350,12 +1356,12 @@
interrupted.*$}}
###############################################################################
runTest {test data-1.24 {LINQ SQL_CONSTRAINTCOLUMNS resource} -body {
- object invoke -flags +NonPublic System.Data.SQLite.Properties.Resources \
- SQL_CONSTRAINTCOLUMNS
+ object invoke -flags +NonPublic \
+ System.Data.SQLite.Linq.Properties.Resources SQL_CONSTRAINTCOLUMNS
} -constraints {eagle System.Data.SQLite System.Data.SQLite.Linq} -result {
CREATE TEMP VIEW SCHEMACONSTRAINTCOLUMNS AS
SELECT CONSTRAINT_CATALOG,
NULL AS CONSTRAINT_SCHEMA,
CONSTRAINT_NAME,
@@ -1376,12 +1382,12 @@
}}
###############################################################################
runTest {test data-1.25 {LINQ SQL_CONSTRAINTS resource} -body {
- object invoke -flags +NonPublic System.Data.SQLite.Properties.Resources \
- SQL_CONSTRAINTS
+ object invoke -flags +NonPublic \
+ System.Data.SQLite.Linq.Properties.Resources SQL_CONSTRAINTS
} -constraints {eagle System.Data.SQLite System.Data.SQLite.Linq} -result {
CREATE TEMP VIEW SCHEMACONSTRAINTS AS
SELECT INDEX_CATALOG AS CONSTRAINT_CATALOG,
NULL AS CONSTRAINT_SCHEMA,
INDEX_NAME AS CONSTRAINT_NAME,
@@ -1488,11 +1494,11 @@
setupDb [set fileName data-1.27.db]
} -body {
set connection [getDbConnection]
set providerServices [object invoke -flags +NonPublic \
- System.Data.SQLite.SQLiteProviderServices Instance]
+ System.Data.SQLite.Linq.SQLiteProviderServices Instance]
object invoke -flags +NonPublic -type \
System.Data.SQLite.ISQLiteSchemaExtensions $providerServices \
BuildTempSchema $connection
} -cleanup {
@@ -2757,11 +2763,11 @@
###############################################################################
unset -nocomplain northwindEfDbFile testLinqOutFile testEf6ExeFile \
testLinqExeFile testExeFile sqliteDesignerDllFile \
systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
- systemDataSQLiteDllFile
+ systemDataSQLiteDllFile entityFrameworkDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: Tests/common.eagle
==================================================================
--- Tests/common.eagle
+++ Tests/common.eagle
@@ -109,10 +109,47 @@
# NOTE: Use the default list of test years.
#
return [list 2005 2008 2010 2012 2013]
}
}
+
+ proc getBuildNetFx {} {
+ #
+ # NOTE: See if the test .NET Framework setting has been overridden by
+ # the user (e.g. on the command line).
+ #
+ if {[info exists ::test_net_fx] && \
+ [string length $::test_net_fx] > 0} then {
+ #
+ # NOTE: Use the specified test .NET Framework.
+ #
+ return $::test_net_fx
+ } else {
+ set year [getBuildYear]
+
+ switch -exact -- $year {
+ 2005 {
+ return netFx20
+ }
+ 2008 {
+ return netFx35
+ }
+ 2010 {
+ return netFx40
+ }
+ 2012 {
+ return netFx45
+ }
+ 2013 {
+ return netFx451
+ }
+ default {
+ return ""
+ }
+ }
+ }
+ }
proc getBuildPlatform { native } {
if {[info exists ::test_platform] && \
[string length $::test_platform] > 0} then {
#
@@ -511,10 +548,18 @@
# in the file name as provided by our caller.
#
return [file nativename \
[file join [getBuildDirectory] $platform [file tail $fileName]]]
}
+
+ proc getExternalDirectory {} {
+ #
+ # NOTE: This procedure returns the directory where the external binary
+ # files are located.
+ #
+ return [file nativename [file dirname [file dirname [info binary]]]]
+ }
proc getBinaryDirectory {} {
#
# NOTE: This procedure returns the directory where the test application
# itself (i.e. the Eagle shell) is located. This will be used as
@@ -531,10 +576,18 @@
return $::binary_directory
} else {
return [info binary]
}
}
+
+ proc getExternalFileName { fileName } {
+ #
+ # NOTE: Returns the specified file name as if it were located in the
+ # directory containing the external binaries.
+ #
+ return [file nativename [file join [getExternalDirectory] $fileName]]
+ }
proc getBinaryFileName { fileName {platform ""} } {
#
# NOTE: Returns the specified file name as if it were located in the
# binary directory, discarding any directory information present
@@ -758,10 +811,44 @@
if {[hasRuntimeOption native]} then {
object invoke Interpreter.GetActive AddRuntimeOption native
}
} [getTestOverridesPreamble [list path test_channel]] $suffix]]]
}
+
+ proc tryCopyExternalFile { fileName {platform ""} {newFileName ""} } {
+ set sourceFileName [getExternalFileName $fileName]
+
+ if {![file exists $sourceFileName]} then {
+ tputs $::test_channel [appendArgs \
+ "---- skipped copying external file \"" $sourceFileName \
+ "\", it does not exist\n"]
+
+ return
+ }
+
+ if {[string length $newFileName] > 0} then {
+ set targetFileName [getBinaryFileName $newFileName $platform]
+ } else {
+ set targetFileName [getBinaryFileName $fileName $platform]
+ }
+
+ set targetDirectory [file dirname $targetFileName]
+
+ if {[catch {
+ if {![file exists $targetDirectory]} then {
+ file mkdir $targetDirectory
+ }
+ file copy -force $sourceFileName $targetFileName}] == 0} then {
+ tputs $::test_channel [appendArgs \
+ "---- copied external file from \"" $sourceFileName "\" to \"" \
+ $targetFileName \"\n]
+ } else {
+ tputs $::test_channel [appendArgs \
+ "---- failed to copy external file from \"" $sourceFileName \
+ "\" to \"" $targetFileName \"\n]
+ }
+ }
proc tryCopyBinaryFile { fileName {platform ""} {newFileName ""} } {
set sourceFileName [getBinaryFileName $fileName $platform]
if {![file exists $sourceFileName]} then {
@@ -2354,10 +2441,19 @@
#
set mdaConfigFileNames [list \
Installer.exe.mda.config test.exe.mda.config \
testlinq.exe.mda.config testef6.exe.mda.config]
+ #
+ # NOTE: Build the list of external files that we handle. Some of
+ # these files may be native and/or managed assemblies that are
+ # required to perform various tests.
+ #
+ set externalFileNames [list \
+ [file join EntityFramework lib [string map [list Fx ""] [string \
+ map [list netFx451 netFx45] [getBuildNetFx]]] EntityFramework.dll]]
+
#
# NOTE: Build the list of native assembly files that we handle. The
# reason the "System.Data.SQLite.dll" file is included here is
# because it could be the mixed-mode assembly.
#
@@ -2382,10 +2478,14 @@
}
foreach fileName $mdaConfigFileNames {
removeConstraint [appendArgs file_ $fileName]
}
+
+ foreach fileName $externalFileNames {
+ removeConstraint [appendArgs file_ [file tail $fileName]]
+ }
foreach fileName $nativeFileNames {
removeConstraint [appendArgs file_ $fileName]
}
@@ -2406,10 +2506,20 @@
if {![info exists ::no(deleteSqliteConfigFiles)]} then {
foreach fileName $configFileNames {
tryDeleteBinaryFile $fileName
}
}
+
+ if {![info exists ::no(deleteSqliteExternalFiles)]} then {
+ foreach fileName $mdaConfigFileNames {
+ tryDeleteBuildFile $fileName
+ }
+
+ foreach fileName $externalFileNames {
+ tryDeleteBinaryFile $fileName
+ }
+ }
if {![info exists ::no(deleteSqliteNativeFiles)]} then {
if {![info exists ::no(deleteSqliteImplicitFiles)]} then {
foreach fileName $nativeFileNames {
tryDeleteAssembly $fileName
@@ -2491,10 +2601,28 @@
if {![info exists ::no(copySqliteConfigFiles)]} then {
foreach fileName $configFileNames {
tryCopyBuildFile $fileName
}
}
+
+ if {![info exists ::no(copySqliteExternalFiles)]} then {
+ #
+ # NOTE: Copy the Managed Debugging Assistants (MDA) configuration
+ # file for the Eagle shell to the build output directory,
+ # while using each of the names of the various legacy test
+ # executables. This will help to make sure that all the
+ # legacy tests run with exactly the same set of Managed
+ # Debugging Assistants configured.
+ #
+ foreach fileName $mdaConfigFileNames {
+ tryCopyBinaryFile EagleShell.exe.mda.config "" $fileName
+ }
+
+ foreach fileName $externalFileNames {
+ tryCopyExternalFile $fileName
+ }
+ }
if {![info exists ::no(copySqliteNativeFiles)]} then {
if {![info exists ::no(copySqliteImplicitFiles)]} then {
foreach fileName $nativeFileNames {
tryCopyAssembly $fileName
@@ -2545,36 +2673,10 @@
[string length $architecture] > 0} then {
tryLoadAssembly System.Data.SQLite.dll $architecture
}
}
}
-
- #
- # NOTE: Skip trying to delete external files if instructed.
- #
- if {![info exists ::no(deleteSqliteExternalFiles)]} then {
- foreach fileName $mdaConfigFileNames {
- tryDeleteBuildFile $fileName
- }
- }
-
- #
- # NOTE: Skip trying to copy external files if instructed.
- #
- if {![info exists ::no(copySqliteExternalFiles)]} then {
- #
- # NOTE: Copy the Managed Debugging Assistants (MDA) configuration
- # file for the Eagle shell to the build output directory,
- # while using each of the names of the various legacy test
- # executables. This will help to make sure that all the
- # legacy tests run with exactly the same set of Managed
- # Debugging Assistants configured.
- #
- foreach fileName $mdaConfigFileNames {
- tryCopyBinaryFile EagleShell.exe.mda.config "" $fileName
- }
- }
}
catch {
tputs $::test_channel [appendArgs \
"---- file version of \"sqlite3.dll\"... " \
@@ -2822,10 +2924,13 @@
#
set modules [object invoke \
System.Diagnostics.Process.GetCurrentProcess Modules]
object foreach -alias module $modules {
+ #
+ # NOTE: The module file name here must be normalized.
+ #
set fileName [file normalize [$module FileName]]
if {[string match -nocase */sqlite3.dll $fileName]} then {
tputs $::test_channel [appendArgs \
"---- found loaded SQLite native library module: " \
Index: Tests/installer.eagle
==================================================================
--- Tests/installer.eagle
+++ Tests/installer.eagle
@@ -24,10 +24,11 @@
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
+set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set sqliteDesignerDllFile [getBuildFileName SQLite.Designer.dll]
set installerExeFile [getBuildFileName Installer.exe]
#
# NOTE: The various install/uninstall log files used to test the design-time
@@ -73,10 +74,15 @@
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteLinqDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteLinqDllFile
}
+
+if {![haveConstraint [appendArgs file_ \
+ [file tail $systemDataSQLiteEf6DllFile]]]} then {
+ checkForFile $test_channel $systemDataSQLiteEf6DllFile
+}
if {![haveConstraint [appendArgs file_ \
[file tail $sqliteDesignerDllFile]]]} then {
checkForFile $test_channel $sqliteDesignerDllFile
}
@@ -327,11 +333,12 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2010 visualStudio2010\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Installer_Test_Vs2010.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Installer_Test_Vs2010.log} -result {0 True}}
###############################################################################
runTest {test installer-1.6 {uninstaller tool / Visual Studio 2010} -setup {
set fileName [file join [getTemporaryPath] [file tail [string map [list \
@@ -366,11 +373,12 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2010 visualStudio2010\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Uninstaller_Test_Vs2010.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Uninstaller_Test_Vs2010.log} -result {0 True}}
###############################################################################
runTest {test installer-1.7 {installer tool / Visual Studio 2012} -setup {
set fileName [file join [getTemporaryPath] [file tail [string map [list \
@@ -406,11 +414,12 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2012 visualStudio2012\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Installer_Test_Vs2012.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Installer_Test_Vs2012.log} -result {0 True}}
###############################################################################
runTest {test installer-1.8 {uninstaller tool / Visual Studio 2012} -setup {
set fileName [file join [getTemporaryPath] [file tail [string map [list \
@@ -446,11 +455,12 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2012 visualStudio2012\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Uninstaller_Test_Vs2012.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Uninstaller_Test_Vs2012.log} -result {0 True}}
###############################################################################
runTest {test installer-1.9 {installer tool / Visual Studio 2013} -setup {
set fileName [file join [getTemporaryPath] [file tail [string map [list \
@@ -486,11 +496,12 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2013 visualStudio2013\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Installer_Test_Vs2013.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Installer_Test_Vs2013.log} -result {0 True}}
###############################################################################
runTest {test installer-1.10 {uninstaller tool / Visual Studio 2013} -setup {
set fileName [file join [getTemporaryPath] [file tail [string map [list \
@@ -526,20 +537,22 @@
unset -nocomplain wow64 is64 code output error fileName
} -constraints {eagle administrator buildYear.2013 visualStudio2013\
System.Data.SQLite.dll_v4.0.30319 file_Installer.exe testExec\
file_System.Data.SQLite.dll file_System.Data.SQLite.Linq.dll\
-file_SQLite.Designer.dll file_Uninstaller_Test_Vs2013.log} -result {0 True}}
+file_System.Data.SQLite.EF6.dll file_SQLite.Designer.dll\
+file_Uninstaller_Test_Vs2013.log} -result {0 True}}
###############################################################################
unset -nocomplain testUninstallVs2013LogFile testUninstallVs2012LogFile \
testUninstallVs2010LogFile testUninstallVs2008LogFile \
testUninstallVs2005LogFile testInstallVs2013LogFile \
testInstallVs2012LogFile testInstallVs2010LogFile \
testInstallVs2008LogFile testInstallVs2005LogFile sqliteDesignerDllFile \
- installerExeFile systemDataSQLiteLinqDllFile systemDataSQLiteDllFile
+ installerExeFile systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
+ systemDataSQLiteDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: Tests/tkt-00f86f9739.eagle
==================================================================
--- Tests/tkt-00f86f9739.eagle
+++ Tests/tkt-00f86f9739.eagle
@@ -22,10 +22,11 @@
#
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
+set entityFrameworkDllFile [getBuildFileName EntityFramework.dll]
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set testLinqExeFile [getBuildFileName testlinq.exe]
set testEf6ExeFile [getBuildFileName testef6.exe]
@@ -33,10 +34,15 @@
testlinq northwindEF.db]]
#
# NOTE: Setup the test constraints specific to the tests in this file.
#
+if {![haveConstraint [appendArgs file_ \
+ [file tail $entityFrameworkDllFile]]]} then {
+ checkForFile $test_channel $entityFrameworkDllFile
+}
+
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteDllFile
}
@@ -63,10 +69,17 @@
}
###############################################################################
runTest {test tkt-00f86f9739-1.1 {LINQ with StartsWith} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
set result [list]
foreach value [list "" a b z 1+1 don notthere] {
set output ""
@@ -100,19 +113,26 @@
FOLKO GALED KOENE LILAS MAGAA MAISD OCEAN RANCH SAVEA THECR} 0 {} 0 {} 0 {} 0\
{}}}
###############################################################################
-runTest {test tkt-00f86f9739-1.2 {LINQ with StartsWith (EF6)} -body {
+runTest {test tkt-00f86f9739-1.2 {EF6 with StartsWith} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
set result [list]
foreach value [list "" a b z 1+1 don notthere] {
set output ""
set code [catch {
- testClrExec $testLinqExeFile [list -eventflags Wait -directory \
- [file dirname $testLinqExeFile] -nocarriagereturns -stdout output \
+ testClrExec $testEf6ExeFile [list -eventflags Wait -directory \
+ [file dirname $testEf6ExeFile] -nocarriagereturns -stdout output \
-success 0] -startsWith $value
} error]
tlog "---- BEGIN STDOUT OUTPUT\n"
tlog $output
@@ -131,19 +151,20 @@
} -cleanup {
unset -nocomplain code output error result value
} -constraints \
{eagle monoToDo defineConstant.System.Data.SQLite.USE_INTEROP_DLL\
defineConstant.System.Data.SQLite.INTEROP_EXTENSION_FUNCTIONS SQLite testExec\
-file_System.Data.SQLite.dll file_System.Data.SQLite.EF6.dll file_testef6.exe\
-file_northwindEF.db} -result {0 {} 0 {DRACD OLDWO RATTC} 0 {ALFKI CACTU CHOPS\
-FOLKO GALED KOENE LILAS MAGAA MAISD OCEAN RANCH SAVEA THECR} 0 {} 0 {} 0 {} 0\
-{}}}
+file_EntityFramework.dll file_System.Data.SQLite.dll\
+file_System.Data.SQLite.EF6.dll file_testef6.exe file_northwindEF.db} -result \
+{0 {} 0 {DRACD OLDWO RATTC} 0 {ALFKI CACTU CHOPS FOLKO GALED KOENE LILAS MAGAA\
+MAISD OCEAN RANCH SAVEA THECR} 0 {} 0 {} 0 {} 0 {}}}
###############################################################################
-unset -nocomplain systemDataSQLiteDllFile systemDataSQLiteLinqDllFile \
- systemDataSQLiteEf6DllFile testLinqExeFile testEf6ExeFile northwindEfDbFile
+unset -nocomplain northwindEfDbFile testEf6ExeFile testLinqExeFile \
+ systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
+ systemDataSQLiteDllFile entityFrameworkDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: Tests/tkt-59edc1018b.eagle
==================================================================
--- Tests/tkt-59edc1018b.eagle
+++ Tests/tkt-59edc1018b.eagle
@@ -24,11 +24,13 @@
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
+set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set testLinqExeFile [getBuildFileName testlinq.exe]
+set testEf6ExeFile [getBuildFileName testef6.exe]
set northwindEfDbFile [file nativename [file join [file dirname $path] \
testlinq northwindEF.db]]
#
# NOTE: Setup the test constraints specific to the tests in this file.
@@ -40,22 +42,38 @@
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteLinqDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteLinqDllFile
}
+
+if {![haveConstraint [appendArgs file_ \
+ [file tail $systemDataSQLiteEf6DllFile]]]} then {
+ checkForFile $test_channel $systemDataSQLiteEf6DllFile
+}
if {![haveConstraint [appendArgs file_ [file tail $testLinqExeFile]]]} then {
checkForFile $test_channel $testLinqExeFile
}
+
+if {![haveConstraint [appendArgs file_ [file tail $testEf6ExeFile]]]} then {
+ checkForFile $test_channel $testEf6ExeFile
+}
if {![haveConstraint [appendArgs file_ [file tail $northwindEfDbFile]]]} then {
checkForFile $test_channel $northwindEfDbFile
}
###############################################################################
runTest {test tkt-59edc1018b-1.1 {LINQ with EndsWith} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
set result [list]
foreach value [list "" a b z 1+1 don notthere] {
set output ""
@@ -88,12 +106,57 @@
file_northwindEF.db} -result {0 {} 0 {FURIB GALED GODOS LAZYK LINOD PRINI REGGC\
WOLZA} 0 {} 0 ERNSH 0 {} 0 {AROUT BSBEV CONSH EASTC NORTS SEVES} 0 {}}}
###############################################################################
-unset -nocomplain systemDataSQLiteDllFile systemDataSQLiteLinqDllFile \
- testLinqExeFile northwindEfDbFile
+runTest {test tkt-59edc1018b-1.2 {EF6 with EndsWith} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
+ set result [list]
+
+ foreach value [list "" a b z 1+1 don notthere] {
+ set output ""
+
+ set code [catch {
+ testClrExec $testEf6ExeFile [list -eventflags Wait -directory \
+ [file dirname $testEf6ExeFile] -nocarriagereturns -stdout output \
+ -success 0] -endsWith $value
+ } error]
+
+ tlog "---- BEGIN STDOUT OUTPUT\n"
+ tlog $output
+ tlog "\n---- END STDOUT OUTPUT\n"
+
+ lappend result $code
+
+ if {$code == 0} then {
+ lappend result [string trim $output]
+ } else {
+ lappend result [string trim $error]
+ }
+ }
+
+ set result
+} -cleanup {
+ unset -nocomplain code output error result value
+} -constraints \
+{eagle monoToDo defineConstant.System.Data.SQLite.USE_INTEROP_DLL\
+defineConstant.System.Data.SQLite.INTEROP_EXTENSION_FUNCTIONS SQLite testExec\
+file_System.Data.SQLite.dll file_System.Data.SQLite.EF6.dll file_testef6.exe\
+file_northwindEF.db} -result {0 {} 0 {FURIB GALED GODOS LAZYK LINOD PRINI REGGC\
+WOLZA} 0 {} 0 ERNSH 0 {} 0 {AROUT BSBEV CONSH EASTC NORTS SEVES} 0 {}}}
+
+###############################################################################
+
+unset -nocomplain northwindEfDbFile testEf6ExeFile testLinqExeFile \
+ systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
+ systemDataSQLiteDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: Tests/tkt-8b7d179c3c.eagle
==================================================================
--- Tests/tkt-8b7d179c3c.eagle
+++ Tests/tkt-8b7d179c3c.eagle
@@ -24,11 +24,13 @@
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
+set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set testLinqExeFile [getBuildFileName testlinq.exe]
+set testEf6ExeFile [getBuildFileName testef6.exe]
set northwindEfDbFile [file nativename [file join [file dirname $path] \
testlinq northwindEF.db]]
#
# NOTE: Setup the test constraints specific to the tests in this file.
@@ -40,22 +42,38 @@
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteLinqDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteLinqDllFile
}
+
+if {![haveConstraint [appendArgs file_ \
+ [file tail $systemDataSQLiteEf6DllFile]]]} then {
+ checkForFile $test_channel $systemDataSQLiteEf6DllFile
+}
if {![haveConstraint [appendArgs file_ [file tail $testLinqExeFile]]]} then {
checkForFile $test_channel $testLinqExeFile
}
+
+if {![haveConstraint [appendArgs file_ [file tail $testEf6ExeFile]]]} then {
+ checkForFile $test_channel $testEf6ExeFile
+}
if {![haveConstraint [appendArgs file_ [file tail $northwindEfDbFile]]]} then {
checkForFile $test_channel $northwindEfDbFile
}
###############################################################################
runTest {test tkt-8b7d179c3c-1.1 {LINQ with Skip and Take} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
set result [list]
for {set pageSize 0} {$pageSize <= 2} {incr pageSize} {
set output ""
@@ -99,12 +117,68 @@
COMMI FAMIA QUEEN TRADH WHITC GODOS SANTG BLONP WANDK FRANS LAMAI BOTTM LAUGB\
LACOR LAZYK WOLZA VAFFE}}}
###############################################################################
-unset -nocomplain systemDataSQLiteDllFile systemDataSQLiteLinqDllFile \
- testLinqExeFile northwindEfDbFile
+runTest {test tkt-8b7d179c3c-1.2 {EF6 with Skip and Take} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
+ set result [list]
+
+ for {set pageSize 0} {$pageSize <= 2} {incr pageSize} {
+ set output ""
+
+ set code [catch {
+ testClrExec $testEf6ExeFile [list -eventflags Wait -directory \
+ [file dirname $testEf6ExeFile] -nocarriagereturns -stdout output \
+ -success 0] -skip $pageSize
+ } error]
+
+ tlog "---- BEGIN STDOUT OUTPUT\n"
+ tlog $output
+ tlog "\n---- END STDOUT OUTPUT\n"
+
+ lappend result $code
+
+ if {$code == 0} then {
+ lappend result [string trim $output]
+ } else {
+ lappend result [string trim $error]
+ }
+ }
+
+ set result
+} -cleanup {
+ unset -nocomplain code output error result pageSize
+} -constraints {eagle monoToDo SQLite file_System.Data.SQLite.dll testExec\
+file_System.Data.SQLite.EF6.dll file_testef6.exe file_northwindEF.db} \
+-result {0 {} 0 {DRACD RATTC OLDWO GALED LILAS MAGAA ALFKI CHOPS SAVEA KOENE\
+MAISD FOLKO CACTU OCEAN RANCH THECR GOURL GROSR SUPRD HUNGO ISLAT QUICK HUNGC\
+GREAL LEHMS RICSU ERNSH WILMK LINOD TRAIH SIMOB OTTIK SPLIR MORGK FOLIG FURIB\
+PRINI AROUT BSBEV CONSH EASTC NORTS SEVES BERGS VICTE BOLID FISSA ROMEY BLAUS\
+BONAP MEREP ANATR ANTON CENTC PERIC TORTU FRANK TOMSP DUMON FRANR WARTH PARIS\
+SPECD LONEP THEBI REGGC VINET WELLI HANAR QUEDE RICAR PICCO HILAA LETSS COMMI\
+FAMIA QUEEN TRADH WHITC GODOS SANTG BLONP WANDK FRANS LAMAI BOTTM LAUGB LACOR\
+LAZYK WOLZA VAFFE} 0 {DRACD RATTC OLDWO GALED LILAS MAGAA ALFKI CHOPS SAVEA\
+KOENE MAISD FOLKO CACTU OCEAN RANCH THECR GOURL GROSR SUPRD HUNGO ISLAT QUICK\
+HUNGC GREAL LEHMS RICSU ERNSH WILMK LINOD TRAIH SIMOB OTTIK SPLIR MORGK FOLIG\
+FURIB PRINI AROUT BSBEV CONSH EASTC NORTS SEVES BERGS VICTE BOLID FISSA ROMEY\
+BLAUS BONAP MEREP ANATR ANTON CENTC PERIC TORTU FRANK TOMSP DUMON FRANR WARTH\
+PARIS SPECD LONEP THEBI REGGC VINET WELLI HANAR QUEDE RICAR PICCO HILAA LETSS\
+COMMI FAMIA QUEEN TRADH WHITC GODOS SANTG BLONP WANDK FRANS LAMAI BOTTM LAUGB\
+LACOR LAZYK WOLZA VAFFE}}}
+
+###############################################################################
+
+unset -nocomplain northwindEfDbFile testEf6ExeFile testLinqExeFile \
+ systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
+ systemDataSQLiteDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: Tests/tkt-ccfa69fc32.eagle
==================================================================
--- Tests/tkt-ccfa69fc32.eagle
+++ Tests/tkt-ccfa69fc32.eagle
@@ -24,11 +24,13 @@
# NOTE: Setup the variables that refer to the various files required by the
# tests in this file.
#
set systemDataSQLiteDllFile [getBuildFileName System.Data.SQLite.dll]
set systemDataSQLiteLinqDllFile [getBuildFileName System.Data.SQLite.Linq.dll]
+set systemDataSQLiteEf6DllFile [getBuildFileName System.Data.SQLite.EF6.dll]
set testLinqExeFile [getBuildFileName testlinq.exe]
+set testEf6ExeFile [getBuildFileName testef6.exe]
set northwindEfDbFile [file nativename [file join [file dirname $path] \
testlinq northwindEF.db]]
#
# NOTE: Setup the test constraints specific to the tests in this file.
@@ -40,22 +42,38 @@
if {![haveConstraint [appendArgs file_ \
[file tail $systemDataSQLiteLinqDllFile]]]} then {
checkForFile $test_channel $systemDataSQLiteLinqDllFile
}
+
+if {![haveConstraint [appendArgs file_ \
+ [file tail $systemDataSQLiteEf6DllFile]]]} then {
+ checkForFile $test_channel $systemDataSQLiteEf6DllFile
+}
if {![haveConstraint [appendArgs file_ [file tail $testLinqExeFile]]]} then {
checkForFile $test_channel $testLinqExeFile
}
+
+if {![haveConstraint [appendArgs file_ [file tail $testEf6ExeFile]]]} then {
+ checkForFile $test_channel $testEf6ExeFile
+}
if {![haveConstraint [appendArgs file_ [file tail $northwindEfDbFile]]]} then {
checkForFile $test_channel $northwindEfDbFile
}
###############################################################################
-runTest {test tkt-ccfa69fc32-1.1 {Entity Framework / Transaction Scope} -body {
+runTest {test tkt-ccfa69fc32-1.1 {LINQ Transaction Scope} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
set result [list]
foreach add [list false true false] {
set output ""
@@ -81,19 +99,66 @@
set result
} -cleanup {
unset -nocomplain code output error result add
} -constraints {eagle monoToDo SQLite file_System.Data.SQLite.dll testExec\
file_System.Data.SQLite.Linq.dll file_testlinq.exe file_northwindEF.db} -match \
-glob -result {0 {1581 1730 1833 2116 2139} 0 {System.Data.UpdateException: *\
----> System.Data.SQLite.SQLiteException: constraint failed
+glob -result {0 {1581 1730 1833 2116 2139} 0\
+{System.Data.UpdateException: * --->\
+System.Data.SQLite.SQLiteException: constraint failed
+UNIQUE constraint failed: Territories.TerritoryID
+*} 0 {1 2 3 4 5 6 7 8 9 10 1576 1577 1578 1579 1580 1581 1730 1833 2116 2139}}}
+
+###############################################################################
+
+runTest {test tkt-ccfa69fc32-1.2 {EF6 Transaction Scope} -body {
+ #
+ # NOTE: Re-copy the reference database file used for this unit test to the
+ # build directory in case it has been changed by a previous test run.
+ #
+ file copy -force $northwindEfDbFile \
+ [file join [getBuildDirectory] [file tail $northwindEfDbFile]]
+
+ set result [list]
+
+ foreach add [list false true false] {
+ set output ""
+
+ set code [catch {
+ testClrExec $testEf6ExeFile [list -eventflags Wait -directory \
+ [file dirname $testEf6ExeFile] -nocarriagereturns -stdout output \
+ -success 0] -efTransaction $add
+ } error]
+
+ tlog "---- BEGIN STDOUT OUTPUT\n"
+ tlog $output
+ tlog "\n---- END STDOUT OUTPUT\n"
+
+ lappend result $code
+
+ if {$code == 0} then {
+ lappend result [string trim $output]
+ } else {
+ lappend result [string trim $error]
+ }
+ }
+
+ set result
+} -cleanup {
+ unset -nocomplain code output error result add
+} -constraints {eagle monoToDo SQLite file_System.Data.SQLite.dll testExec\
+file_System.Data.SQLite.EF6.dll file_testef6.exe file_northwindEF.db} -match \
+glob -result {0 {1581 1730 1833 2116 2139} 0\
+{System.Data.Entity.Core.UpdateException: * --->\
+System.Data.SQLite.SQLiteException: constraint failed
UNIQUE constraint failed: Territories.TerritoryID
*} 0 {1 2 3 4 5 6 7 8 9 10 1576 1577 1578 1579 1580 1581 1730 1833 2116 2139}}}
###############################################################################
-unset -nocomplain systemDataSQLiteDllFile systemDataSQLiteLinqDllFile \
- testLinqExeFile northwindEfDbFile
+unset -nocomplain northwindEfDbFile testEf6ExeFile testLinqExeFile \
+ systemDataSQLiteEf6DllFile systemDataSQLiteLinqDllFile \
+ systemDataSQLiteDllFile
###############################################################################
runSQLiteTestEpilogue
runTestEpilogue
Index: testlinq/2010/EF6/App.config
==================================================================
--- testlinq/2010/EF6/App.config
+++ testlinq/2010/EF6/App.config
@@ -6,17 +6,17 @@
-
+
-
+
Index: testlinq/2012/EF6/App.config
==================================================================
--- testlinq/2012/EF6/App.config
+++ testlinq/2012/EF6/App.config
@@ -6,17 +6,17 @@
-
+
-
+
Index: testlinq/2013/EF6/App.config
==================================================================
--- testlinq/2013/EF6/App.config
+++ testlinq/2013/EF6/App.config
@@ -6,17 +6,17 @@
-
+
-
+
Index: tools/install/Installer.cs
==================================================================
--- tools/install/Installer.cs
+++ tools/install/Installer.cs
@@ -1139,11 +1139,11 @@
if (whatIf)
{
//
// HACK: Attempt to open the specified sub-key. If this
// fails, we will simply return the wrapped root key
- // itself since no writes are allowed in 'what-if'
+ // itself since no writes are allowed in "what-if"
// mode anyhow.
//
RegistryKey subKey = key.OpenSubKey(subKeyName);
return (subKey != null) ?
@@ -1388,11 +1388,11 @@
///////////////////////////////////////////////////////////////////
#region Implicit Conversion Operators
//
- // BUGBUG: Remove me? This should be safe because in 'what-if'
+ // BUGBUG: Remove me? This should be safe because in "what-if"
// mode all keys are opened read-only.
//
public static implicit operator RegistryKey(
MockRegistryKey key
)
@@ -1528,11 +1528,11 @@
ForDisplay(rootKey), ForDisplay(subKeyName),
ForDisplay(writable)), traceCategory);
//
// HACK: Always forbid writable access when operating in
- // 'what-if' mode.
+ // "what-if" mode.
//
MockRegistryKey key = rootKey.OpenSubKey(
subKeyName, whatIf ? false : writable);
return (key != null) ?
@@ -1561,19 +1561,19 @@
try
{
//
// HACK: Always open a key, rather than creating one when
- // operating in 'what-if' mode.
+ // operating in "what-if" mode.
//
if (whatIf)
{
//
// HACK: Attempt to open the specified sub-key. If
// this fails, we will simply return the root
// key itself since no writes are allowed in
- // 'what-if' mode anyhow.
+ // "what-if" mode anyhow.
//
MockRegistryKey key = rootKey.OpenSubKey(subKeyName);
return (key != null) ?
key : new MockRegistryKey(
@@ -2120,10 +2120,42 @@
}
}
return null;
}
+
+ ///////////////////////////////////////////////////////////////////
+
+ private static bool IsEf6AssemblyAvailable()
+ {
+ try
+ {
+ Assembly assembly = Assembly.ReflectionOnlyLoad(
+ Ef6AssemblyName);
+
+ if (assembly != null)
+ {
+ TraceOps.DebugAndTrace(TracePriority.Highest,
+ debugCallback, traceCallback,
+ "Entity Framework 6 assembly was resolved.",
+ traceCategory);
+
+ return true;
+ }
+ }
+ catch
+ {
+ // do nothing.
+ }
+
+ TraceOps.DebugAndTrace(TracePriority.Highest,
+ debugCallback, traceCallback,
+ "Entity Framework 6 assembly was not resolved.",
+ traceCategory);
+
+ return false;
+ }
#endregion
///////////////////////////////////////////////////////////////////
#region Public Static Methods
@@ -3081,12 +3113,12 @@
"64-bit" : "32-bit"), traceCategory);
if (!configuration.whatIf)
{
//
- // NOTE: If the debugger is attached and What-If mode
- // is [now] disabled, issue a warning.
+ // NOTE: If the debugger is attached and "what-if"
+ // mode is [now] disabled, issue a warning.
//
if (Debugger.IsAttached)
TraceOps.DebugAndTrace(TracePriority.MediumHigh,
debugCallback, traceCallback,
"Forced to disable \"what-if\" mode with " +
@@ -3277,28 +3309,34 @@
///////////////////////////////////////////////////////////////////
public bool IsLinqSupported()
{
//
- // NOTE: Return non-zero if the LINQ assembly should be
- // processed during the install. If the target is
- // Visual Studio 2005, this should return zero.
+ // NOTE: Return non-zero if the System.Data.SQLite.Linq
+ // assembly should be processed during the install.
+ // If the target is Visual Studio 2005, this must
+ // return zero.
//
return !noNetFx35 || !noNetFx40 || !noNetFx45 || !noNetFx451;
}
///////////////////////////////////////////////////////////////////
public bool IsEf6Supported()
{
//
- // NOTE: Return non-zero if the EF6 assembly should be
- // processed during the install. If the target is
- // Visual Studio 2005 or Visual Studio 2008, this
- // should return zero.
+ // NOTE: Return non-zero if the System.Data.SQLite.EF6
+ // assembly should be processed during the install.
+ // If the target is Visual Studio 2005 or Visual
+ // Studio 2008, this must return zero. Also, if
+ // the EF6 core assembly is unavailable, this must
+ // return zero.
//
- return !noNetFx40 || !noNetFx45 || !noNetFx451;
+ if (noNetFx40 && noNetFx45 && noNetFx451)
+ return false;
+
+ return IsEf6AssemblyAvailable();
}
///////////////////////////////////////////////////////////////////
public void Dump(
@@ -3940,10 +3978,15 @@
///////////////////////////////////////////////////////////////////////
private const string CLRv2ImageRuntimeVersion = "v2.0.50727";
private const string CLRv4ImageRuntimeVersion = "v4.0.30319";
+ ///////////////////////////////////////////////////////////////////////
+
+ private const string Ef6AssemblyName = "EntityFramework, " +
+ "Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
+
///////////////////////////////////////////////////////////////////////
private const string NameAndValueFormat = "{0}: {1}";
private const string LogFileSuffix = ".log";
@@ -6347,11 +6390,11 @@
TraceOps.DebugAndTrace(TracePriority.Highest,
debugCallback, traceCallback, ForDisplay(startInfo),
traceCategory);
//
- // NOTE: In 'what-if' mode, do not actually start the process.
+ // NOTE: In "what-if" mode, do not actually start the process.
//
if (!whatIf)
{
process.Start();