支持rename property和event
parent
53681bd14a
commit
bb9d784090
|
@ -17,6 +17,8 @@ namespace Obfuz.Rename
|
||||||
|
|
||||||
string GetNewName(MethodDef methodDef, string originalName);
|
string GetNewName(MethodDef methodDef, string originalName);
|
||||||
|
|
||||||
|
string GetNewName(ParamDef param, string originalName);
|
||||||
|
|
||||||
string GetNewName(FieldDef fieldDef, string originalName);
|
string GetNewName(FieldDef fieldDef, string originalName);
|
||||||
|
|
||||||
string GetNewName(PropertyDef propertyDef, string originalName);
|
string GetNewName(PropertyDef propertyDef, string originalName);
|
||||||
|
@ -51,6 +53,11 @@ namespace Obfuz.Rename
|
||||||
return GetDefaultNewName(originalName);
|
return GetDefaultNewName(originalName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public string GetNewName(ParamDef param, string originalName)
|
||||||
|
{
|
||||||
|
return GetDefaultNewName(originalName);
|
||||||
|
}
|
||||||
|
|
||||||
public string GetNewName(FieldDef fieldDef, string originalName)
|
public string GetNewName(FieldDef fieldDef, string originalName)
|
||||||
{
|
{
|
||||||
return GetDefaultNewName(originalName);
|
return GetDefaultNewName(originalName);
|
||||||
|
|
|
@ -14,11 +14,13 @@ namespace Obfuz
|
||||||
private readonly ObfuscatorContext _ctx;
|
private readonly ObfuscatorContext _ctx;
|
||||||
|
|
||||||
private readonly IRenamePolicy _renamePolicy;
|
private readonly IRenamePolicy _renamePolicy;
|
||||||
|
private readonly INameMaker _nameMaker;
|
||||||
|
|
||||||
public SymbolRename(ObfuscatorContext ctx)
|
public SymbolRename(ObfuscatorContext ctx)
|
||||||
{
|
{
|
||||||
_ctx = ctx;
|
_ctx = ctx;
|
||||||
_renamePolicy = new RenamePolicy();
|
_renamePolicy = ctx.renamePolicy;
|
||||||
|
_nameMaker = ctx.nameMaker;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Process()
|
public void Process()
|
||||||
|
@ -49,7 +51,10 @@ namespace Obfuz
|
||||||
Rename(method);
|
Rename(method);
|
||||||
foreach (Parameter param in method.Parameters)
|
foreach (Parameter param in method.Parameters)
|
||||||
{
|
{
|
||||||
Rename(param.ParamDef);
|
if (param.ParamDef != null)
|
||||||
|
{
|
||||||
|
Rename(param.ParamDef);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -88,7 +93,7 @@ namespace Obfuz
|
||||||
private void Rename(ModuleDefMD mod)
|
private void Rename(ModuleDefMD mod)
|
||||||
{
|
{
|
||||||
string oldName = MetaUtil.GetModuleNameWithoutExt(mod.Name);
|
string oldName = MetaUtil.GetModuleNameWithoutExt(mod.Name);
|
||||||
string newName = _ctx.nameMaker.GetNewName(mod, oldName);
|
string newName = _nameMaker.GetNewName(mod, oldName);
|
||||||
mod.Name = $"{newName}.dll";
|
mod.Name = $"{newName}.dll";
|
||||||
Debug.Log($"rename module. oldName:{oldName} newName:{newName}");
|
Debug.Log($"rename module. oldName:{oldName} newName:{newName}");
|
||||||
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(mod))
|
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(mod))
|
||||||
|
@ -116,12 +121,12 @@ namespace Obfuz
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
newNamespace = _ctx.nameMaker.GetNewNamespace(type, oldNamespace);
|
newNamespace = _nameMaker.GetNewNamespace(type, oldNamespace);
|
||||||
type.Namespace = newNamespace;
|
type.Namespace = newNamespace;
|
||||||
}
|
}
|
||||||
|
|
||||||
string oldName = type.Name;
|
string oldName = type.Name;
|
||||||
string newName = _ctx.nameMaker.GetNewName(type, oldName);
|
string newName = _nameMaker.GetNewName(type, oldName);
|
||||||
type.Name = newName;
|
type.Name = newName;
|
||||||
string newFullName = type.FullName;
|
string newFullName = type.FullName;
|
||||||
Debug.Log($"rename typedef. assembly:{type.Module.Name} oldName:{oldFullName} => newName:{newFullName}");
|
Debug.Log($"rename typedef. assembly:{type.Module.Name} oldName:{oldFullName} => newName:{newFullName}");
|
||||||
|
@ -151,7 +156,7 @@ namespace Obfuz
|
||||||
private void Rename(FieldDef field)
|
private void Rename(FieldDef field)
|
||||||
{
|
{
|
||||||
string oldName = field.Name;
|
string oldName = field.Name;
|
||||||
string newName = _ctx.nameMaker.GetNewName(field, oldName);
|
string newName = _nameMaker.GetNewName(field, oldName);
|
||||||
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(field.DeclaringType.Module))
|
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(field.DeclaringType.Module))
|
||||||
{
|
{
|
||||||
foreach (MemberRef memberRef in ass.module.GetMemberRefs())
|
foreach (MemberRef memberRef in ass.module.GetMemberRefs())
|
||||||
|
@ -211,16 +216,17 @@ namespace Obfuz
|
||||||
|
|
||||||
private void Rename(ParamDef param)
|
private void Rename(ParamDef param)
|
||||||
{
|
{
|
||||||
|
param.Name = _nameMaker.GetNewName(param, param.Name);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Rename(EventDef eventDef)
|
private void Rename(EventDef eventDef)
|
||||||
{
|
{
|
||||||
|
eventDef.Name = _nameMaker.GetNewName(eventDef, eventDef.Name);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Rename(PropertyDef property)
|
private void Rename(PropertyDef property)
|
||||||
{
|
{
|
||||||
|
property.Name = _nameMaker.GetNewName(property, property.Name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue