From: GBNick72 on
Hi,

I'm trying to create a more secure application, to try and prevent
code hacking. There seems to be a lack of applications which can
protect a smart device C++ executable, most seem to be for C#. I'm
trying to create a C# application which uses PInvoke to access a C++
dll. I can get the C# application to correctly call into my C++
regular dll but only if it is statically linked to MFC, which is fine
but it doubles the size of the code. Has anyone managed to get this
to work with a shared MFC dll which is much smaller?.

I can't create a managed dll because it's not supported for
smartdevices.

Does anyone know of any application which can inject some kind nano
protection into a smartdevice C++ application?, ones which also work
with the security model on the non touch screen phones. I did find
one but it will only work with PDA's and not phones and it's not being
developed further.

Thanks in advance.

Nicko.
From: Chris Tacke, MVP on
What kind of "protection" are you after?

Also, you say you're unable to P/Invoke. What's the failure mode? I've
never seen a problem calling a publicly exported function on any DLL,
provided the DLL can load normally. So if your shared MFC DLL is callable
from native, then it's callable from managed.

-Chris

<GBNick72(a)gmail.com> wrote in message
news:93d658b9-b4c9-46e5-ae3a-593fef32640c(a)s33g2000pri.googlegroups.com...
> Hi,
>
> I'm trying to create a more secure application, to try and prevent
> code hacking. There seems to be a lack of applications which can
> protect a smart device C++ executable, most seem to be for C#. I'm
> trying to create a C# application which uses PInvoke to access a C++
> dll. I can get the C# application to correctly call into my C++
> regular dll but only if it is statically linked to MFC, which is fine
> but it doubles the size of the code. Has anyone managed to get this
> to work with a shared MFC dll which is much smaller?.
>
> I can't create a managed dll because it's not supported for
> smartdevices.
>
> Does anyone know of any application which can inject some kind nano
> protection into a smartdevice C++ application?, ones which also work
> with the security model on the non touch screen phones. I did find
> one but it will only work with PDA's and not phones and it's not being
> developed further.
>
> Thanks in advance.
>
> Nicko.

From: GBNick72 on
Hi Chris,

Thanks for the reply. I always get a missing method exception using
shared MFC, the exported function is visible from depends and
correctly decorated i.e. using extern "C", as soon as I switch the DLL
to use static it works. I even tried using a static MFC DLL calling a
shared MFC DLL with C# calling the static and the static calling the
shared, this produces the same error. I think it must be looking for
MFC and failing is the only thing I can think of. At the moment I
going through the painful process of converting my MFC app into C#. I
just hope I can access everything I need from C#, I'm trying framework
1 at present so it will run on WM5 without having to push the 2 or 3
to the device. If I can't get access to everything I need from C#
(i.e. EDB) I may have to PInvoke a normal non MFC DLL to get the
functionality I need. One question I did have if I codesigned my exe
could it still be hacked?, I'm guessing yes.

The kind of protection I'm looking for is basically to stop hackers
from turning trial expiry software into fully functional release, it
appears they can either decompile smartdevice C++ executable files or
remove your trial code from the exe or produce key generators. I was
always under the impression that native C++ exe's are more secure than
C# exe's. I have read some applications place little tricks in your
code like calling the garbage collection which throws hackers, I know C
++ doesn't have garbage collection in the same sense as C# or Java.

Thanks in advance

Nicko.

On Jun 14, 11:47 pm, "Chris Tacke, MVP" <ctacke.at.opennetcf.dot.com>
wrote:
> What kind of "protection" are you after?
>
> Also, you say you're unable to P/Invoke.  What's the failure mode?  I've
> never seen a problem calling a publicly exported function on any DLL,
> provided the DLL can load normally.  So if your shared MFC DLL is callable
> from native, then it's callable from managed.
>
> -Chris
>
> <GBNic...(a)gmail.com> wrote in message
>
> news:93d658b9-b4c9-46e5-ae3a-593fef32640c(a)s33g2000pri.googlegroups.com...
>
>
>
> > Hi,
>
> > I'm trying to create a more secure application, to try and prevent
> > code hacking.  There seems to be a lack of applications which can
> > protect a smart device C++ executable, most seem to be for C#.  I'm
> > trying to create a C# application which uses PInvoke to access a C++
> > dll.  I can get the C# application to correctly call into my C++
> > regular dll but only if it is statically linked to MFC, which is fine
> > but it doubles the size of the code.  Has anyone managed to get this
> > to work with a shared MFC dll which is much smaller?.
>
> > I can't create a managed dll because it's not supported for
> > smartdevices.
>
> > Does anyone know of any application which can inject some kind nano
> > protection into a smartdevice C++ application?, ones which also work
> > with the security model on the non touch screen phones.  I did find
> > one but it will only work with PDA's and not phones and it's not being
> > developed further.
>
> > Thanks in advance.
>
> > Nicko.- Hide quoted text -
>
> - Show quoted text -