Options

C++ Mixed Mode

omheienomheien Posts: 29
edited December 9, 2010 6:08AM in SmartAssembly 5
Hi all
I have a C++ DLL holding two exported procedures that lets me load the library in our Win32 application created in Clarion for Windows (Not .NET)
Tis C++ library allso holds some managed code that lets me do calls from my Win32 applications into the .NET world.

I'm using IJW to acomplish this task.

I tryed the evaluate version of SA to see if I could obfuscate my Visual Studio solution, but it stopped on my C++ project saying that Mixed Mode is not supported. I then obfuscated just the C# projects and that worked well. But then I assume that my C++ DLL not longer can access the C# projects.

Am I right or can this be done?

If not, I must look for an other obfuscator.

regards
Ole

Comments

  • Options
    Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Sorry, Ole. you can't use the current or previous versions of SmartAssembly to protect assemblies that have a mix of managed and unmanaged code.
  • Options
    I mean, since I can ObFuscate all the C# modules, is it not possible to decorate a class or method in my C# project that tells the obfuscator NOT to obfuscate? Because this would let the C++ code call the C# library. This is as fas as I can see then way many other obfuscators do it. Problem is that there are only two obfuscators that prevent hackers from seeing the code inside the methods, at least this is what I have found testing the one I found. And the other ObFuscator that manage this is DotFuscator from PreEmptive. Problem is that they wanted €2500 for the product, and that was including a 50% discount, which means the product actually costs €5000. A rather amazing prize for an obfuscator
  • Options
    Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Hi Ole,

    I'm guessing it's because SA gets a lot of the information about types from the metadata to work out how to obfuscate them and unmanaged code does not have this information available in the assembly.
Sign In or Register to comment.