The project of U-WA-
http://uwa.potetihouse.com/
トップページ > 過去ログ > 記事閲覧
アイコン 自作DLLを使っている場合の難読化
日時: 2009/01/19 23:29
名前: きい

NanDoKu 3.2.1 を使わせてもらっていますが、自作のDLLを使ったものは難読化を行うことができません。自作のDLLに限らず、FormにMedia Playerを貼り付けただけのexeを作って難読化しようとしても同様です。

このようなファイルをNanDoKuのウインドウへドロップすると、ステータスバーに「使用しているライブラリを確認しています。」と出たままとなり先に進まず、新規作成から「難読化を行うプログラム」を指定して難読化しようとするとハンドルされていない例外が発生します。
外部のDLLを難読化しようとは思いませんが、このような場合でも実行ファイルだけ難読化させるのは可能でしょうか。

Page: 1 |

ファイル Re: 自作DLLを使っている場合の難読化 ( No.1 )
日時: 2009/01/23 00:14
名前: Toki◆pRU.c9X.EOI

実行環境と再現方法を詳しく教えていただけますでしょうか。

こちらで、同様の現象が確認できれば対応が早いと思います。
ファイル Re: 自作DLLを使っている場合の難読化 ( No.2 )
日時: 2009/01/23 01:38
名前: きい

失礼しました。環境書き忘れていました。

Windows XP Pro SP3
Visual C# 2008 Express Edition sp1
.NET Framework 3.5 sp1

です。

1 「Windows フォームアプリケーション」の新しいプロジェクト作成
2 ツールメニューの「ツールボックスアイテムの選択」から「Windows Media Player」を選択
3 「ツールボックス」から「Windows Media Player」をFormに配置
4 ビルド
5 NanDoKuで難読化を試みる

自作DLLの場合は次のようになります。

・実行ファイルのclass
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

ClassLibrary1.Class1 class1 = new ClassLibrary1.Class1();
class1.num = 1;
}
}

・DLLのclass
public class Class1
{
public int num = 0;
}

1 publicな変数(intでもstringでも)を一つだけもったDLLを作成(上記のソース)
2 参照設定の「参照の追加」から自作のDLLを指定
3 自作DLLのclassに作った変数にコンストラクタで何か値を入れる(上記のソース)
4 ビルド
5 NanDoKuで難読化を試みる
ファイル Re: 自作DLLを使っている場合の難読化 ( No.3 )
日時: 2009/01/23 22:20
名前: Toki◆pRU.c9X.EOI

.NET Framework 3.5が原因ではないでしょうか?

NanDoKuの現在のバージョンでは .NET Framework 2.0までしか難読かが行えません。

確認してみてください
ファイル Re: 自作DLLを使っている場合の難読化 ( No.4 )
日時: 2009/01/24 09:04
名前: きい

IDEからターゲットフレームワークを.NET Framework2.0 にした場合は難読化できず
IDEを使わずに2.0でコンパイルしたものは難読化できました。

他のDLLを参照していないものなら3.5でも難読化できていたので、できるものと思いこんでいました。
Client Profileを使えなくなるのは残念ですが、とりあえず2.0にしておきます。

Page: 1 |