Compiling source code (lisp)

Compiling source code (lisp)

DGRL
Advisor Advisor
2,962 Views
13 Replies
Message 1 of 14

Compiling source code (lisp)

DGRL
Advisor
Advisor

Dear coders

 

Except for the use of vlide within AutoCAD to compile your lisp source into *.VLX is there a way to compile the LISP into a DLL or other file that can be read by AutoCAD?

Since VLX can be decompiled I want to be able to protect certain lsp files I made

 

Also, is there a (easy) way to make the code run as demo version ( 30 days for example )

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
2,963 Views
13 Replies
Replies (13)
Message 2 of 14

DannyNL
Advisor
Advisor

VLX is the way to go and it can't be de-compiled.

 

And afaik there is no way to integrate an out-of-the-box licensing system. It can be coded more or less, but you probably need to use user and/or system information to create keys and node lock the routines to the system.

 

I didn't look into it, but maybe the plugins offer something for licensing.

0 Likes
Message 3 of 14

DGRL
Advisor
Advisor

@DannyNL

 

Thanks for the reply

I will search the app store to see if I can find something

 

I want to sent you a private message but getting error

You have reached the limit for number of private messages that you can send for now. Please try again later.

My first message for the day and its being rejected
Can you PM me your email

I want to sent you some info you might want to know

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
Message 4 of 14

marko_ribar
Advisor
Advisor

@DGRL

 

AFAIK, you can't completely de-compile vlx-fas file... If you have some other info ab this we'll like to hear... I know that it isn't secure enough if you really want to protect your work, but that's the way it is with lisp... There is certainly possibility for someone to sneak into vlx and see what routine is all about, but that's all - you can't modify it or completely decompile, modify and recompile at least by my knowledge...

Marko Ribar, d.i.a. (graduated engineer of architecture)
0 Likes
Message 5 of 14

DGRL
Advisor
Advisor

@marko_ribar


There are probably ways of getting even FAS / VLX files decrypted, but you have to ask yourself: "Isn't that against the law?" It's what's called reverse-engineering or de-compiling.

 

 

I'm not going to share such information as I do not want to get black listed as a reverse engineer

All I can say is google is your biggest friend but can also be your worst enemy.

 

 

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
Message 6 of 14

marko_ribar
Advisor
Advisor

Well, Isn't against the law to post a question on the forum and then when you get an answer in form of ALISP code or something like it, to then accept solution and simply steal the code?

To me it's the same, but this way you only ensure that person that posted is the author - you simply can't prevent someone that stole the code to further modify it or use it in any way he/she likes even if that's against authors approval...

 

All you could do is not to post either vlx, fas, or lsp files if you really don't want to public it to be available for usage or abuse of any kind... If you want to protect your work, the best is to keep it for yourself in your personal library and don't share it unless you see some benefit of it by sharing... This is my opinion and I also have my personal library that I update from time to time, but not all the codes are mine, so I can't share it - I can use it for my own work...

Marko Ribar, d.i.a. (graduated engineer of architecture)
0 Likes
Message 7 of 14

DGRL
Advisor
Advisor

Quote

"Well, Isn't against the law to post a question on the forum and then when you get an answer in form of ALISP code or something like it, to then accept solution and simply steal the code?"


If I ask someone to write me a lisp code to do something and I accept the solution given and copy the code is not considered stealing.

Anyone else who will copy the code is basically stealing
But since it is on a public website the word stealing cant be used as this is considered shareware.

On the other hand
If I download a *.vlx file from a site and decompile it, then I am stealing someone's work and that is not lawful.

 

 

And what if I made a program and want to sell it in the app store?
No one in the world will upload there source code in the app store to be bought and distributed.

Every programmer want to protect there programs.

 

 

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
Message 8 of 14

marko_ribar
Advisor
Advisor

Hey, the code is the code... Nowhere is written it's free or it's for selling... Simply if you want to earn money from it, be aware that it would be used and abused and what is even worse you may not even get any benefit of writing it and posting it for that purpose... Simply your work is your and no one else... If you don't know how to make your programs be useful to you - you should rewrite them... Also you can't force the people to buy your code if they don't need it... So what I've said is probably the only correct thing to do - keep your work for yourself and see if you can use it in the future and make your codes beneficial for your working progress on some concrete real projects you are facing... Programming or automating things is not the only way you can earn money - the key thing is to be active and do it correctly, creatively, and as much as possible beneficial to you and your company you work for...

I hate when I have to disappoint someone, but that's totally true - I don't even know if someone earned money by selling software that's not beneficial to bigger audience of people that need to develop further their business... So for someone lonely - a programmer can only seek to get some kind of understanding of his/her work (programming skills) and if he/she gets paid it's because of his/her ability to guess correctly what current working situation is and give some help assistance by providing software that can produce or improve productivity of working environment...

Marko Ribar, d.i.a. (graduated engineer of architecture)
0 Likes
Message 9 of 14

DGRL
Advisor
Advisor

@DannyNL

 

 

I just did a decompile of vlx file to fas to txt and I consider this as save

Even after decompiling the vlx to txt it is still a mess and very hard to recompile back
Changes are very hard to make if even possible


Next step for me is not a trial version system for lsp

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
Message 10 of 14

_gile
Consultant
Consultant

@DGRL wrote:

And what if I made a program and want to sell it in the app store?
No one in the world will upload there source code in the app store to be bought and distributed.

Every programmer want to protect there programs.

 

 


If you want to sell your programs, you have to ask yourself, "How much can that make me earn?" and: "how much am I willing to spend in development time or to buy a third-party license solution?"

For my part, I tried with two paid apps on the Exchange Apps Store: OsnapPalette and BatchPurge.
These are .NET applications and it is much easier to decompile a .NET DLL than a VLX file.
OsnapPalette has only been downloaded 55 times since
07/29/2012 and BatchPurge 93 times since 04/04/2014.
As you can see, I have not made a fortune, at least not enough to pay for reliable protection given the time spent developing and maintaining these applications.

 



Gilles Chanteau
Programmation AutoCAD LISP/.NET
GileCAD
GitHub

Message 11 of 14

DGRL
Advisor
Advisor

@_gile

 

Thanks for the message

Its not about earning and making money
It is about learning and to see possibilities with LISP

 

I learned so much from you last few weeks and I really want to thanks you for this .

Keep it up 🙂

 

 

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes
Message 12 of 14

DannyNL
Advisor
Advisor

Yes, I know it is still a mess after decompiling Smiley Happy

 

Years and years ago I tried the same as I lost the source code of a routine due to a harddisk failure (yes, I know....backup....backup....backup,.....it won't happen again, that's for sure 😉 ), so I tried decompiling the VLX. In the end I couldn't do anything with the output, so decided to rewrite the routine. Was easier and much quicker than to try to decipher the decompiled mess.

0 Likes
Message 13 of 14

doaiena
Collaborator
Collaborator

As far as i am aware *.vlx can't be decompiled to usable source code. Though given enough time, one could get a basic understanding of how an app's security works and make his way around it. The .vlx format is still relatively secure mostly because it's relatively unknown and there aren't many tools developed for decompiling it.


On the topic of demo versions. There are so many approaches to making a trial version of an application, that it's not reasonable to even try and list them. 
You should limit the functionallity of your program based on that trial period. Checking if the trial has expired is where multiple doors open.
You could go for a basic system clock check, which is easily bypassable. You can store the date every time your app loads in a file and validate the trial based on the file info. You can also do an always online app than needs to get the date from a server at startup. Or you can do a combination of all. There are many more ways to validate an app's trial period. Do a bit of research on how people protect their trial versions or think of your own way. That's the great part of programming - your imagination is the limit...

0 Likes
Message 14 of 14

DGRL
Advisor
Advisor

Quote

 

 "your imagination is the limit..." 

So true

 

And as example i will look at MS Excel
That has a nice way of limiting the program after 5 days and not being activated

 

If this was of any help please kudo and/or Accept as Solution
Kind Regards
0 Likes