Index: trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs	(revision 1989)
+++ trunk/sources/HeuristicLab.Hive.Client.Core/3.2/Core.cs	(revision 1990)
@@ -244,5 +244,5 @@
           files.AddRange(plugininfo.PluginFiles);
         
-        AppDomain appDomain = PluginManager.Manager.CreateAndInitAppDomainWithSandbox(e.Result.Job.Id.ToString(), sandboxed, null, files);        
+        AppDomain appDomain = PluginManager.Manager.CreateAndInitAppDomainWithSandbox(e.Result.Job.Id.ToString(), sandboxed, null, files);
         appDomain.UnhandledException += new UnhandledExceptionEventHandler(appDomain_UnhandledException);
         lock (engines) {                    
@@ -265,5 +265,4 @@
       currentlyFetching = false;
     }
-    
 
     void wcfService_StoreFinishedJobResultCompleted(object sender, StoreFinishedJobResultCompletedEventArgs e) {
Index: trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/3.2/Executor.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/3.2/Executor.cs	(revision 1989)
+++ trunk/sources/HeuristicLab.Hive.Client.ExecutionEngine/3.2/Executor.cs	(revision 1990)
@@ -53,5 +53,4 @@
     public void Start(byte[] serializedJob) {
       CreationTime = DateTime.Now;
-      
       Job = (IJob)PersistenceManager.RestoreFromGZip(serializedJob);
       //debug
Index: trunk/sources/HeuristicLab.Hive.Engine/3.2/HiveEngine.cs
===================================================================
--- trunk/sources/HeuristicLab.Hive.Engine/3.2/HiveEngine.cs	(revision 1989)
+++ trunk/sources/HeuristicLab.Hive.Engine/3.2/HiveEngine.cs	(revision 1990)
@@ -172,6 +172,4 @@
     public void Abort() {
       IExecutionEngineFacade executionEngineFacade = ServiceLocator.CreateExecutionEngineFacade(HiveServerUrl);
-
-      //This are just Stubs on the server right now. There won't be any effect right now...
       executionEngineFacade.AbortJob(jobId);
       OnFinished();
Index: trunk/sources/HeuristicLab.PluginInfrastructure/PluginManager.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/PluginManager.cs	(revision 1989)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/PluginManager.cs	(revision 1990)
@@ -229,5 +229,5 @@
 
       if (assemblyFiles != null && assemblyFiles.Count > 0)
-        remoteRunner.LoadPlugins(assemblyFiles);
+        remoteRunner.LoadAssemblies(assemblyFiles);
       
       //if (depPlugins != null && depPlugins.Count > 0) {        
Index: trunk/sources/HeuristicLab.PluginInfrastructure/Runner.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/Runner.cs	(revision 1989)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/Runner.cs	(revision 1990)
@@ -30,4 +30,16 @@
   public class Runner : MarshalByRefObject {
 
+    private Dictionary<string, Assembly> loadedAssemblies;
+
+    public Runner() {
+      loadedAssemblies = new Dictionary<string, Assembly>();
+      AppDomain.CurrentDomain.AssemblyResolve += (sender, args) => {
+        if(loadedAssemblies.ContainsKey(args.Name)) {
+          return loadedAssemblies[args.Name];
+        }
+        return null;
+      };
+    }
+
     public void LoadPlugins(ICollection<PluginInfo> plugins) {
       //FileIOPermission fileperm = new FileIOPermission(FileIOPermissionAccess.AllAccess, @"C:\Program Files\HeuristicLab 3.0\plugins\");
@@ -43,11 +55,17 @@
     }
     /// <summary>
-    /// Loads plugins from a byte array
+    /// Loads assemblies from a byte array
     /// </summary>
-    /// <param name="plugins">bytearray of all plugins that should be loaded</param>
-    public void LoadPlugins(ICollection<byte[]> plugins) {
-      foreach (byte[] plugin in plugins) {
-        Assembly.Load(plugin);        
+    /// <param name="plugins">bytearray of all assemblies that should be loaded</param>
+    public void LoadAssemblies(ICollection<byte[]> assemblies) {
+      foreach (byte[] asm in assemblies) {
+        Assembly loadedAsm = Assembly.Load(asm);
+        RegisterLoadedAssembly(loadedAsm);
       }
+    }
+
+    private void RegisterLoadedAssembly(Assembly asm) {
+      loadedAssemblies.Add(asm.FullName, asm);
+      loadedAssemblies.Add(asm.GetName().Name, asm); // add short name
     }
 
