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