【问题标题】:C# - Put window code in a class (code obfuscation)C# - 将窗口代码放在一个类中(代码混淆)
【发布时间】:2023-04-06 09:30:01
【问题描述】:

这可能是一个愚蠢和令人困惑的问题,但我应该将我的 C# 代码放在类文件中,然后将其引用到窗口文件代码中,而不是将其直接放入窗口文件代码中吗? 记住我想在之后混淆我的代码。

将代码直接放入窗口文件的示例:

(主窗口)

 private void button1_Click(object sender, RoutedEventArgs e)
    {
      MessageBox.Show("Clicked");
      //Do Some Code
    }

将代码放入类中并将其引用到 MainWindow 的示例:

(主窗口)

 private void button1_Click(object sender, RoutedEventArgs e)
{
  Helper.DoButton1Code();
}

(助手类)

 public static bool DoButton1Code()
    {
      MessageBox.Show("Clicked");
      //Do Some Code
    }

【问题讨论】:

  • 您想知道将代码放在不同的类中是否更适合混淆或一般?
  • 不,我目前将我的代码放在窗口文件中,而不是使用类。为了混淆我的项目,我是否需要将其放入上面示例中的类中?
  • 那么不,没有区别,只是放在windows文件中(顺便说一下,是一个类)。另请注意,即使经过混淆,您的代码也可以进行逆向工程(尽管难度更大)。
  • 那么我可以在窗体代码和空白类代码上使用 SmartAssembly 混淆器吗?

标签: c# class window obfuscation


【解决方案1】:

据我所知,将逻辑或资源(例如字符串)放在哪里并没有太大区别,只要它被混淆了。但是,您应该专注于组织代码,以便更容易调试和维护。

使用reflector.exe等,但是我们可以看到你的公共方法签名,虽然函数名可能被混淆了。

【讨论】:

  • 我能否使用 SmartAssembly 混淆我的代码,无论它是放在窗口窗体代码中还是放在类中?
猜你喜欢
  • 1970-01-01
  • 2023-04-08
  • 2013-03-24
  • 2018-08-01
  • 2017-03-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-14
相关资源
最近更新 更多