diff --git a/src/PRoCon.Console/PRoCon.Console.csproj b/src/PRoCon.Console/PRoCon.Console.csproj index 91e6e1dd..48e5ee2f 100644 --- a/src/PRoCon.Console/PRoCon.Console.csproj +++ b/src/PRoCon.Console/PRoCon.Console.csproj @@ -59,10 +59,43 @@ bin\Release\ + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + + + ..\packages\MySqlConnector.2.4.0\lib\net462\MySqlConnector.dll + ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + diff --git a/src/PRoCon.Console/app.config b/src/PRoCon.Console/app.config index 26136892..4d5774c1 100644 --- a/src/PRoCon.Console/app.config +++ b/src/PRoCon.Console/app.config @@ -3,5 +3,16 @@ + + + + + + + + + + + diff --git a/src/PRoCon.Console/packages.config b/src/PRoCon.Console/packages.config index d4d3d118..5dd2db64 100644 --- a/src/PRoCon.Console/packages.config +++ b/src/PRoCon.Console/packages.config @@ -1,4 +1,14 @@  - + + + + + + + + + + + \ No newline at end of file diff --git a/src/PRoCon.Core/PRoCon.Core.csproj b/src/PRoCon.Core/PRoCon.Core.csproj index 6c8046e4..5c1e25ec 100644 --- a/src/PRoCon.Core/PRoCon.Core.csproj +++ b/src/PRoCon.Core/PRoCon.Core.csproj @@ -76,18 +76,30 @@ False ..\..\lib\ziplib\Ionic.Zip.Reduced.dll + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + ..\packages\Microsoft.CodeAnalysis.Common.4.7.0\lib\netstandard2.0\Microsoft.CodeAnalysis.dll ..\packages\Microsoft.CodeAnalysis.CSharp.4.7.0\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + False ..\..\lib\mysql\connector\6.4.4\MySql.Data.dll True + + ..\packages\MySqlConnector.2.4.0\lib\net462\MySqlConnector.dll + ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll @@ -107,6 +119,9 @@ + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + ..\packages\System.Diagnostics.FileVersionInfo.4.3.0\lib\net46\System.Diagnostics.FileVersionInfo.dll @@ -182,6 +197,7 @@ ..\packages\System.Threading.Thread.4.3.0\lib\net46\System.Threading.Thread.dll + ..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll diff --git a/src/PRoCon.Core/Plugin/PluginManager.cs b/src/PRoCon.Core/Plugin/PluginManager.cs index 91faa777..76a1ceed 100644 --- a/src/PRoCon.Core/Plugin/PluginManager.cs +++ b/src/PRoCon.Core/Plugin/PluginManager.cs @@ -557,6 +557,16 @@ private void PreparePluginsDirectory() File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "PRoCon.Core.dll"), Path.Combine(PluginBaseDirectory, "PRoCon.Core.dll"), true); File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "MySql.Data.dll"), Path.Combine(PluginBaseDirectory, "MySql.Data.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Microsoft.Bcl.AsyncInterfaces.dll"), Path.Combine(PluginBaseDirectory, "Microsoft.Bcl.AsyncInterfaces.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Buffers.dll"), Path.Combine(PluginBaseDirectory, "System.Buffers.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Memory.dll"), Path.Combine(PluginBaseDirectory, "System.Memory.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Numerics.Vectors.dll"), Path.Combine(PluginBaseDirectory, "System.Numerics.Vectors.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Runtime.CompilerServices.Unsafe.dll"), Path.Combine(PluginBaseDirectory, "System.Runtime.CompilerServices.Unsafe.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Microsoft.Extensions.Logging.Abstractions.dll"), Path.Combine(PluginBaseDirectory, "Microsoft.Extensions.Logging.Abstractions.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Microsoft.Extensions.DependencyInjection.Abstractions.dll"), Path.Combine(PluginBaseDirectory, "Microsoft.Extensions.DependencyInjection.Abstractions.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Diagnostics.DiagnosticSource.dll"), Path.Combine(PluginBaseDirectory, "System.Diagnostics.DiagnosticSource.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "System.Threading.Tasks.Extensions.dll"), Path.Combine(PluginBaseDirectory, "System.Threading.Tasks.Extensions.dll"), true); + File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "MySqlConnector.dll"), Path.Combine(PluginBaseDirectory, "MySqlConnector.dll"), true); File.Copy(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "PRoCon.Core.pdb"), Path.Combine(PluginBaseDirectory, "PRoCon.Core.pdb"), true); // Clean up temp directory @@ -643,7 +653,23 @@ private IEnumerable GetCSharpCompilationReferences() MetadataReference.CreateFromFile(string.Format(dotnetRuntimePath, "System.Xml")), MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "MySql.Data")), - MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "PRoCon.Core")) + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "PRoCon.Core")), + + // MySqlConnector dependencies of dependencies + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "Microsoft.Bcl.AsyncInterfaces")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Buffers")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Memory")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Numerics.Vectors")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Runtime.CompilerServices.Unsafe")), + + // MySqlConnector dependencies + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "Microsoft.Extensions.Logging.Abstractions")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "Microsoft.Extensions.DependencyInjection.Abstractions")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Diagnostics.DiagnosticSource")), + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "System.Threading.Tasks.Extensions")), + + // MySQL Connector + MetadataReference.CreateFromFile(string.Format(proconRuntimePath, "MySqlConnector")), }; } @@ -946,7 +972,8 @@ public void CompilePlugins(PermissionSet pluginSandboxPermissions, List var hostEvidence = new Evidence(); hostEvidence.AddHost(new Zone(SecurityZone.MyComputer)); - AppDomainSandbox = AppDomain.CreateDomain(ProconClient.HostName + ProconClient.Port + "Engine", hostEvidence, domainSetup, pluginSandboxPermissions, PluginManager.GetStrongName(AppDomain.CurrentDomain.GetAssemblies().FirstOrDefault(assembly => assembly.GetName().Name == "MySql.Data"))); + // ignore... this logic for mysql connector + AppDomainSandbox = AppDomain.CreateDomain(ProconClient.HostName + ProconClient.Port + "Engine", hostEvidence, domainSetup, pluginSandboxPermissions, PluginManager.GetStrongName(AppDomain.CurrentDomain.GetAssemblies().FirstOrDefault(assembly => assembly.GetName().Name == "MySql.Data" || assembly.GetName().Name == "MySqlConnector"))); WritePluginConsole("Configuring sandbox.."); // create the factory class in the secondary app-domain diff --git a/src/PRoCon.Core/app.config b/src/PRoCon.Core/app.config index edfb9acf..2904f527 100644 --- a/src/PRoCon.Core/app.config +++ b/src/PRoCon.Core/app.config @@ -6,159 +6,153 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/src/PRoCon.Core/packages.config b/src/PRoCon.Core/packages.config index 4386ffa2..e1c696d1 100644 --- a/src/PRoCon.Core/packages.config +++ b/src/PRoCon.Core/packages.config @@ -1,17 +1,22 @@  - - - - + + + + + + + + - - - - + + + + + - + @@ -24,29 +29,29 @@ - + - + - - - + + + - + - + - + - - + + diff --git a/src/PRoCon.Service/PRoCon.Service.csproj b/src/PRoCon.Service/PRoCon.Service.csproj index cd4423fc..e486ca91 100644 --- a/src/PRoCon.Service/PRoCon.Service.csproj +++ b/src/PRoCon.Service/PRoCon.Service.csproj @@ -67,12 +67,45 @@ + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + + + ..\packages\MySqlConnector.2.4.0\lib\net462\MySqlConnector.dll + ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + diff --git a/src/PRoCon.Service/app.config b/src/PRoCon.Service/app.config index c9b10102..918894c8 100644 --- a/src/PRoCon.Service/app.config +++ b/src/PRoCon.Service/app.config @@ -3,5 +3,16 @@ + + + + + + + + + + + diff --git a/src/PRoCon.Service/packages.config b/src/PRoCon.Service/packages.config index 7aae6662..5dd2db64 100644 --- a/src/PRoCon.Service/packages.config +++ b/src/PRoCon.Service/packages.config @@ -1,4 +1,14 @@  - + + + + + + + + + + + \ No newline at end of file diff --git a/src/PRoCon/PRoCon.csproj b/src/PRoCon/PRoCon.csproj index 03cc617e..24fe9a0b 100644 --- a/src/PRoCon/PRoCon.csproj +++ b/src/PRoCon/PRoCon.csproj @@ -82,17 +82,50 @@ False ..\..\lib\ziplib\Ionic.Zip.Reduced.dll + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + False ..\..\lib\mysql\connector\6.4.4\MySql.Data.dll True + + ..\packages\MySqlConnector.2.4.0\lib\net462\MySqlConnector.dll + ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + diff --git a/src/PRoCon/app.config b/src/PRoCon/app.config index 1f42a18a..fffd371c 100644 --- a/src/PRoCon/app.config +++ b/src/PRoCon/app.config @@ -3,5 +3,16 @@ + + + + + + + + + + + diff --git a/src/PRoCon/packages.config b/src/PRoCon/packages.config index d4d3d118..5dd2db64 100644 --- a/src/PRoCon/packages.config +++ b/src/PRoCon/packages.config @@ -1,4 +1,14 @@  - + + + + + + + + + + + \ No newline at end of file diff --git a/src/PRoConUpdater/PRoConUpdater.csproj b/src/PRoConUpdater/PRoConUpdater.csproj index f322cc74..a0b646ff 100644 --- a/src/PRoConUpdater/PRoConUpdater.csproj +++ b/src/PRoConUpdater/PRoConUpdater.csproj @@ -71,14 +71,47 @@ False ..\..\lib\ziplib\Ionic.Zip.Reduced.dll + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.2\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + + + ..\packages\MySqlConnector.2.4.0\lib\net462\MySqlConnector.dll + ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + diff --git a/src/PRoConUpdater/app.config b/src/PRoConUpdater/app.config index 1e399a09..7782eae1 100644 --- a/src/PRoConUpdater/app.config +++ b/src/PRoConUpdater/app.config @@ -1,3 +1,12 @@ - + - + + + + + + + + + + diff --git a/src/PRoConUpdater/packages.config b/src/PRoConUpdater/packages.config index 7aae6662..5dd2db64 100644 --- a/src/PRoConUpdater/packages.config +++ b/src/PRoConUpdater/packages.config @@ -1,4 +1,14 @@  - + + + + + + + + + + + \ No newline at end of file