new: AssemblySettings adds a new option: `obfuscateObfuzRuntime`

before-split
walon 2025-05-21 18:36:08 +08:00
parent 425db24ee2
commit 3d04c15d98
3 changed files with 24 additions and 5 deletions

View File

@ -9,5 +9,7 @@ namespace Obfuz.Editor
public static class ConstValues
{
public const string ObfuzInternalSymbolNamePrefix = "$Obfuz$";
public const string ObfuzRuntimeAssemblyName = "Obfuz.Runtime";
}
}

View File

@ -182,7 +182,7 @@ namespace Obfuz
_encryptionVmGenerationSecretKey = settings.encryptionVMSettings.codeGenerationSecretKey,
_encryptionVmOpCodeCount = settings.encryptionVMSettings.encryptionOpCodeCount,
_encryptionVmCodeFile = settings.encryptionVMSettings.codeOutputPath,
_assembliesToObfuscate = settings.assemblySettings.assembliesToObfuscate.ToList(),
_assembliesToObfuscate = settings.assemblySettings.GetAssembliesToObfuscate(),
_nonObfuscatedButReferencingObfuscatedAssemblies = settings.assemblySettings.nonObfuscatedButReferencingObfuscatedAssemblies.ToList(),
_assemblySearchPaths = searchPaths,
_obfuscatedAssemblyOutputPath = settings.GetObfuscatedAssemblyOutputPath(target),

View File

@ -1,4 +1,7 @@
using NUnit.Framework;
using Obfuz.Editor;
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
@ -17,11 +20,25 @@ namespace Obfuz.Settings
[Tooltip("additional assembly search paths")]
public string[] additionalAssemblySearchPaths;
public string[] GetObfuscationRelativeAssemblyNames()
[Tooltip("obfuscate Obfuz.Runtime")]
public bool obfuscateObfuzRuntime = true;
public List<string> GetAssembliesToObfuscate()
{
return assembliesToObfuscate
.Concat(nonObfuscatedButReferencingObfuscatedAssemblies)
.ToArray();
var asses = new List<string>(assembliesToObfuscate);
if (obfuscateObfuzRuntime && !asses.Contains(ConstValues.ObfuzRuntimeAssemblyName))
{
asses.Add(ConstValues.ObfuzRuntimeAssemblyName);
}
return asses;
}
public List<string> GetObfuscationRelativeAssemblyNames()
{
var asses = GetAssembliesToObfuscate();
asses.AddRange(nonObfuscatedButReferencingObfuscatedAssemblies);
return asses;
}
}
}