无法让 Obfuscar 停止对类进行混淆

问题描述 投票:0回答:1

我需要我的一个类不被混淆,我添加了all的SkipNamespace规则,但它仍然没有被跳过。

旁注:我必须关闭很多通用规则,这样我的应用程序就不会因混淆而被破坏。如果打开,下面显示为错误的大多数规则都会破坏我的应用程序。

旁注:任何混淆器建议(免费/便宜)。如果能找到一款能够以最少的选择“正常工作”的产品,那就太好了。要求:1)混淆,2)让我排除一类,3)程序仍然有效

稍后我会将完整路径更改为相对路径(一旦确定它从哪里运行):

<?xml version="1.0" encoding="utf-8" ?>
<Var name="HidePrivateApi" value="true" />

<Var name="KeepPublicApi" value="false" />
<Var name="RenameProperties" value="false" />
<Var name="RenameEvents" value="false" />
<Var name="RenameFields" value="false" />
<Var name="UseUnicodeNames" value="false" />
<Var name="HideStrings" value="false" />
<Var name="OptimizeMethods" value="false" />
<Var name="SuppressIldasm" value="false" />

<Module file="C:\Users\gerry\Documents\myproject\ProjectFolder\bin\x64\Release\net8.0-windows7.0\MyDll.dll">
    <SkipNamespace name="MyNamespace.LeaveThisClassAlone" />

    <SkipNamespace name="MyNamespace.LeaveThisClassAlone*" />

    <SkipField type="MyNamespace.LeaveThisClassAlone" attrib="public" name="name" />
    <SkipField type="MyNamespace.LeaveThisClassAlone" attrib="public" rx="Pub.*" />

    <SkipMethod type="MyNamespace.LeaveThisClassAlone" attrib="public" rx=".*" />
    <SkipMethod type="MyNamespace.LeaveThisClassAlone" attrib="family" rx=".*" />

    <SkipType name="MyNamespace.LeaveThisClassAlone" skipMethods="true" />
    <SkipType name="MyNamespace.LeaveThisClassAlone" skipFields="true" />
    <SkipType name="MyNamespace.LeaveThisClassAlone" skipProperties="true" />
    <SkipType name="MyNamespace.LeaveThisClassAlone" skipEvents="true" />
    <SkipType name="MyNamespace.LeaveThisClassAlone" skipMethods="true" skipFields="true" />
    <SkipType name="MyNamespace.LeaveThisClassAlone" skipStringHiding="true" />

    <SkipProperty type="MyNamespace.LeaveThisClassAlone" name="name" />
    <SkipProperty type="MyNamespace.LeaveThisClassAlone" attrib="public" rx="name\d" />

    <SkipProperty type="MyNamespace.LeaveThisClassAlone" name="Event2" />
    <SkipProperty type="MyNamespace.LeaveThisClassAlone" rx="Any.*" />

    <SkipStringHiding type="MyNamespace.LeaveThisClassAlone" name="*" />
</Module>

<assembly name='$(MSBuildProjectName)' frameworkversion='v4.0' />
<Module file="$(InPath)\MyDll.dll" />
<referencepath path='C:\Windows\Microsoft.NET\Framework\v4.0.30319' />
<AssemblySearchPath path="C:\Windows\Microsoft.NET\Framework\v4.0.30319" />
.net obfuscation obfuscar
1个回答
0
投票

哼,没关系。找不到我想要在 ILSpy 中隐藏的类,但序列化已开始工作。我正在使用 CsvReader,它不起作用,但在添加上面的所有跳过规则后,现在它可以工作了。不知道怎么做,但好吧。

无论如何,上面的混淆和我的程序仍然运行,所以我将把它留在这里作为其他人的例子。就我个人而言,我非常喜欢通过例子来学习。

© www.soinside.com 2019 - 2024. All rights reserved.