-1

私は C# 言語を使用して com dll を開発し、C++ を使用して COM 経由でマネージ コードを呼び出し、成功しました。次に、C# com dll をobfuscarで難読化し、インターフェイスと com エクスポート クラスを除外します。そして、COMオブジェクトを作成するときに失敗したCOM dllを呼び出すC++を使用します。なんで?除外する必要がある他のクラスまたはインターフェイスはありますか? ありがとうございました。

4

1 に答える 1

0

まず、古い .NET アセンブリ (難読化されていないアセンブリ) を次のコマンドで登録解除します。

regasm /u yourassembly

次に、/tlb オプションを使用して再度登録し、tlb ファイルを再度生成してから、新しい tlb ファイルで C++ プロジェクトをコンパイルします。コマンドは次のとおりです。

regasm /tlb yourassemly

regasm.exe は C:\Windows\Microsoft.NET\Framework{.NET version Number} の下にあります。.NET のバージョンが異なれば、regasm.exe も異なります。また、32 ビット版と 64 ビット版の両方があります。合ってるやつ。

于 2013-10-31T12:38:15.830 に答える