Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Class Source Code Protection 3

Status
Not open for further replies.

megmogg

Programmer
Jul 14, 2005
76
GB
Hi All

I will be soon developing an application for someone and they will want the source code.

However, I do not want to ship all my standard classes, but they do still need to use them to continue development.

Is there any way I can ship my VCX with the project but:

1. the users cannot see the source code.
2. the users can still effectivley use the class.

Therefore, protecting my classes.

I have seen classes protected before, but not sure how it is done and cannot find anything on tek-tips or the web.

Any ideas welcome.

Many Thanks

 
Not to my knowledge. After all, the classes are just tables - if they have them they can read them.

Regards,
Jim
 


thanks for the reply

in my search, i found this reply to a similair question from a guy called Vlad Grynchyshyn.

You can also compile a simple EXE file with encryption and provide a help on
using that class by creating it in run-time from that EXE. In VFP6 SP and
later versions of VFP there is a NewObject() functiona nd NewObject() method
that give a possibility to create objects or add new objects to container
from classes compiled into the another EXE, defined in the PRG etc. I did
not tried this approach though and propose it for the first time. Just
guessing that this might work.


My issue is that I have a classlib (using the IDE) which contains all my standard routines. When I ship to the client, they will have their OWN classlib which is based on my original.

Could I therefore use the above solution? Or is there a package available?

Thanks


 


Thanks for the reply.

I read somewhere that if a user tries to open the VCX in teh IDE after doing this, it will no longer compile.

I suppose they could see also try to see it through the inherited code.

Is this the case that it wouldnt compile?


 

Megmogg,

Open the VCX file as a table. Delete the contents of all the Methods fields. Do NOT touch the ObjCode field. (Obviously, do a backup before you start.)

Your friend will still be able to use the classes, but won't be able to see the source code. Of course, he won't be able to change the classes either (except to subclass them).

MIke

__________________________________
Mike Lewis (Edinburgh, Scotland)

My Visual FoxPro site: www.ml-consult.co.uk
 
This will compile, only a problem if someone compiles with the option "recompile all".

But you can't change code, therefore you need your backup/development version _with_ code.

And no, they can't see through inherited code or the "View Parent Code" button of vfp9 or the superclass utility by ken levy. It's gone out of the Memo field "Methods". But they can bye refox and recompile the object code still stored in the "Objcode" memo.

Bye, Olaf.
 


Thanks all for the replies.

All sorted.

The "recompile all" option did not affect the project and it still compiled.

Think I'll purhcase ReFox as well.
 
Hi megmogg,

I might be wrong as with "recompile all", but refox is only good to protect source code in an EXE, not standalone VCXs, FRXs, etc.

Bye, Olaf.
 

Hi Olaf

Reason for ReFox is so that they cannot get anything else from the EXE from the ClassLib.

Also, will be useful for other projects.

Many Thanks
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top