Delphi License Problem
Delphi License Problem
Hello.
I am looking for a good software protection solution and I came here since I decided that VMProtect is everything I really need for a great price.
I am programming in C++, C# and Delphi so it really has everything I need. Except .NET C#.
I tested C++ licensing and it works great. It recognizes all [Procedure] points. But when I tried to load Delphi license example it says:
"Procedure "TForm1.tryBtnClick" is not found in objects list"
then
"Procedure "TForm1.edSerialNumberChange" is not found in objects list"
and
"Procedure "TForm1.FormCreate" is not found in objects list"
I didn't modify anything, I just compiled the project in Delphi 2010 and opened the TestApp.exe with VMProtect. Same as I did with C++, but Delphi won't work. I checked the TestApp.exe.vmp and all those procedures are there under [Procedure]. C++ project file also has three of them but of course in different format.
Any ideas why VMProtect cannot read those procedures? Is it because of compiler or?
Thanks.
I am looking for a good software protection solution and I came here since I decided that VMProtect is everything I really need for a great price.
I am programming in C++, C# and Delphi so it really has everything I need. Except .NET C#.
I tested C++ licensing and it works great. It recognizes all [Procedure] points. But when I tried to load Delphi license example it says:
"Procedure "TForm1.tryBtnClick" is not found in objects list"
then
"Procedure "TForm1.edSerialNumberChange" is not found in objects list"
and
"Procedure "TForm1.FormCreate" is not found in objects list"
I didn't modify anything, I just compiled the project in Delphi 2010 and opened the TestApp.exe with VMProtect. Same as I did with C++, but Delphi won't work. I checked the TestApp.exe.vmp and all those procedures are there under [Procedure]. C++ project file also has three of them but of course in different format.
Any ideas why VMProtect cannot read those procedures? Is it because of compiler or?
Thanks.
Re: Delphi License Problem
After compilation in Delphi 2010 these procedures will have such names:
"Unit1.TForm1.tryBtnClick"
"Unit1.TForm1.edSerialNumberChange"
"Unit1.TForm1.FormCreate"
Try to add these procedures manually through GUI of VMProtect.
"Unit1.TForm1.tryBtnClick"
"Unit1.TForm1.edSerialNumberChange"
"Unit1.TForm1.FormCreate"
Try to add these procedures manually through GUI of VMProtect.
Re: Delphi License Problem
Ok, I've done that. Added all three procedures but TestApp.vmp.exe will not accept the key. I tried adding procedures both manually and edited the .vmp file and added Unit1. before those three procedures. Nothing works. INVALID_STATE always.
I reproduced every step from C++ example and it won't work.
Only difference I notice is that C++ exe has (key) in front of 0042D650 ProtectedCode(struct HWND__ *) and there is no (key) in Delphi procedures.
I reproduced every step from C++ example and it won't work.
Only difference I notice is that C++ exe has (key) in front of 0042D650 ProtectedCode(struct HWND__ *) and there is no (key) in Delphi procedures.
Re: Delphi License Problem
For Delphi 2010 need change this string:
to
Code: Select all
nState := VMProtectSetSerialNumber(PAnsiChar(edSerialNumber.Text));
Code: Select all
nState := VMProtectSetSerialNumber(PAnsiChar(AnsiString(edSerialNumber.Text)));
Re: Delphi License Problem
Thank you! Everything works perfect. If there is no urgent issues, expect my order this week.
Re: Delphi License Problem
Just few more questions before purchase... Sorry for this but I want to know everything about the product before purchase. This is also important to me, but not dealbreaker.
Question 1:
When I pack a .EXE/.DLL with VMProtect. Every PE Identifier will show that an is packed with VMProtect.
1. Does VMProtect offers "packer" confusion like some others do?
2. Is there any trick to rick PE identifiers so they cannot make a positive result?
3. And third is obvious: After I packed my exe/dll with VMP, Can I use another packer to mask the packer signature?
And PS. Maybe you could implement a dropbox full of packers for user to select to completely confuse the cracker.
Question 2:
I know that there is a very nice help inside VMProtect install folder, but I was wondering is there some other documentation? Any kind will do but my focus is at "pen-test" VMProtected software and such.
Question 2:
If I protect my Delphi application with VMP 2.05 and use VMP Licensing System... what are the chances it will be cracked? I never tried to do VMP UnPackme or similar so I don't know how licensing system is strong.
Thanks.
Question 1:
When I pack a .EXE/.DLL with VMProtect. Every PE Identifier will show that an is packed with VMProtect.
1. Does VMProtect offers "packer" confusion like some others do?
2. Is there any trick to rick PE identifiers so they cannot make a positive result?
3. And third is obvious: After I packed my exe/dll with VMP, Can I use another packer to mask the packer signature?
And PS. Maybe you could implement a dropbox full of packers for user to select to completely confuse the cracker.
Question 2:
I know that there is a very nice help inside VMProtect install folder, but I was wondering is there some other documentation? Any kind will do but my focus is at "pen-test" VMProtected software and such.
Question 2:
If I protect my Delphi application with VMP 2.05 and use VMP Licensing System... what are the chances it will be cracked? I never tried to do VMP UnPackme or similar so I don't know how licensing system is strong.
Thanks.
Re: Delphi License Problem
The demo-version of VMProtect has fixed and known signatures. The full version doesn't and it is quite hard to detect VMProtect in the packed file if you want to hide it.robbie84 wrote: When I pack a .EXE/.DLL with VMProtect. Every PE Identifier will show that an is packed with VMProtect.
1. Does VMProtect offers "packer" confusion like some others do?
See #1robbie84 wrote: 2. Is there any trick to rick PE identifiers so they cannot make a positive result?
See #1robbie84 wrote: 3. And third is obvious: After I packed my exe/dll with VMP, Can I use another packer to mask the packer signature?
I tell you more that we don't recommend to mix packers.
All the documentation is shipped with VMProtect. No other documentation exists.robbie84 wrote: I know that there is a very nice help inside VMProtect install folder, but I was wondering is there some other documentation? Any kind will do but my focus is at "pen-test" VMProtected software and such.
One of the most important feature of VMProtect is its virtualization engine. Even if a hacker spends lots of time to crack your application, you just need to re-protect it and he has to start from the beginning. Each time you protect the application, VMProtect creates a set of completely different virtual machines and virtualizes everything related to licensing. So every protected application has a completely different virtualized licensing code. It is very difficult even to analyze it.robbie84 wrote: If I protect my Delphi application with VMP 2.05 and use VMP Licensing System... what are the chances it will be cracked? I never tried to do VMP UnPackme or similar so I don't know how licensing system is strong.
In the upcoming version 2.06 this scheme will be improved, so it will be much harder to crack the licensing system.
Re: Delphi License Problem
Thanks for the answers.
I just did a test on a simple HelloWorld app and got this:
So it looks like it can see the packer with no problem, unless I use that trick. But I don't know what the trick is? If you can tell me where should I make that trick? Is it the scripts? I am asking because I didn't find it in the help files and I want to confuse PE identifiers.
As for the cracking of licensing system, I am pleased with that. If a cracker needs few weeks to dump VM and then keygen it, it is enough. And especially if I set 2 or 3 VMs
Thanks!
PS. Great product you have here. I am myself in RCE business (for fun) and I think I never saw more complicated protection. Hell, they were saying Securom 7 was unbreakable and then Bioshock (game) came and me and other two cracked it in 3 weeks. Only because we had to dump the VM and do a complete code reconstruction. But this is really great.
I just did a test on a simple HelloWorld app and got this:
Code: Select all
[File Heuristics] -> Flag : 00000000000001001100001100000111 (0x0004C307)
[!] VM Protect v1.60 - v2.05 (or newer) detected !
- Scan Took : 0.844 Second(s)
As for the cracking of licensing system, I am pleased with that. If a cracker needs few weeks to dump VM and then keygen it, it is enough. And especially if I set 2 or 3 VMs

Thanks!
PS. Great product you have here. I am myself in RCE business (for fun) and I think I never saw more complicated protection. Hell, they were saying Securom 7 was unbreakable and then Bioshock (game) came and me and other two cracked it in 3 weeks. Only because we had to dump the VM and do a complete code reconstruction. But this is really great.
Re: Delphi License Problem
Hi. I started having a really strange problem. I am now testing the licensing on a simple app just to see the functionality.
When you instructed me to add Procedures manually, it worked. Now, I can't see any procedures of any EXE I open. Even the TestApp.exe from Example directory.
First I guessed I did something wrong in my app, but then I tried your Example and it still doesn't work.
When I click "All Procedures" I only see
I tried Delphi and C++. Can't see any procedures except EntryPoint. I tried reinstalling the VMP Demo and still nothing.
What happened? It was working great before.
And also if I add:
It still gives Warning that those objects cannot be found. And when I try manually, there are no procedures except EntryPoint?
What happened?
EDIT:
C++ EXES work. I tried opening my old apps and it reads Procedures with no problems, but Delphi won't.
Can the problem be in newly installed components for Delphi 2010? When it all worked, I was coding in fresh installed Delphi 2010. Now I have some components added. But I didn't use those components in my test app. And also I didn't use them in your TestApp.exe example.
Can it be that compiler changed somehow and VMProtect cannot read the procedures in the EXE? But then that doesn't make sense since it also cannot read Procedures from EXES compiled a long time ago in Delphi...
When you instructed me to add Procedures manually, it worked. Now, I can't see any procedures of any EXE I open. Even the TestApp.exe from Example directory.
First I guessed I did something wrong in my app, but then I tried your Example and it still doesn't work.
When I click "All Procedures" I only see
Code: Select all
0045EF28 EntryPoint
What happened? It was working great before.
And also if I add:
Code: Select all
[Procedures]
MapAddress0=Unit1.TForm1.btTryClick
Options0=1
CompilationType0=0
MapAddress1=Unit1.TForm1.edSerialNumberChange
Options1=1
CompilationType1=0
MapAddress2=Unit1.TForm1.FormCreate
Options2=1
CompilationType2=0
What happened?
EDIT:
C++ EXES work. I tried opening my old apps and it reads Procedures with no problems, but Delphi won't.
Can the problem be in newly installed components for Delphi 2010? When it all worked, I was coding in fresh installed Delphi 2010. Now I have some components added. But I didn't use those components in my test app. And also I didn't use them in your TestApp.exe example.
Can it be that compiler changed somehow and VMProtect cannot read the procedures in the EXE? But then that doesn't make sense since it also cannot read Procedures from EXES compiled a long time ago in Delphi...
Re: Delphi License Problem
We have analyzed "File Heuristics" (hehe - if it can be named a heuristic
)) of ProtectionID 0.6.4 and we`ll plan to circumvent this analysis in the next version of VMProtect.
About your problems with procedures list - I think that you did not set the creation of MAP file in your compiler (Project -> Options -> Linker -> Map file) or MAP file does`t exist at application directory.

About your problems with procedures list - I think that you did not set the creation of MAP file in your compiler (Project -> Options -> Linker -> Map file) or MAP file does`t exist at application directory.
Re: Delphi License Problem
Heh it worked. I didn't notice that Delphi has turned MAP off. It was creating it before. Dunno why it disabled it.
Just another quick question. When I compile test example and run the TestApp.vmp.exe and press the "Try to execute protected code" button I get the right message and I didn't enter any serial. When I enter a valid serial, I get the same message. Is there some check if key is right so if it not I get some error?
Here is RAR archive of the app. I couldn't attack it because it is 900kb. Files: TestApp.vmp.exe, VMProtectSDK32.dll and serial.txt (valid serial inside). .EXE is created with default code from your Delphi Example. Nothing was modified. Check it out.
http://hotfile.com/dl/66483066/0310a3e/TestApp.rar.html
PS. You are one of best support teams I have encountered. Very nice. Looking forward to my VMProtect copy.
Just another quick question. When I compile test example and run the TestApp.vmp.exe and press the "Try to execute protected code" button I get the right message and I didn't enter any serial. When I enter a valid serial, I get the same message. Is there some check if key is right so if it not I get some error?
Here is RAR archive of the app. I couldn't attack it because it is 900kb. Files: TestApp.vmp.exe, VMProtectSDK32.dll and serial.txt (valid serial inside). .EXE is created with default code from your Delphi Example. Nothing was modified. Check it out.
http://hotfile.com/dl/66483066/0310a3e/TestApp.rar.html
PS. You are one of best support teams I have encountered. Very nice. Looking forward to my VMProtect copy.
Re: Delphi License Problem
In your application "tryBtnClick" is not locked by serial number (the demo version can protect ONLY one random procedure from your list of procedures for protection).
P.S. VMProtectSDK32.dll is not need for protected application.
P.S. VMProtectSDK32.dll is not need for protected application.
Re: Delphi License Problem
P.P.S. Before asking try to find an answer on your question in the help file of VMProtect.
Re: Delphi License Problem
Believe me, I don't go asking around... I study alot! But these things eluded me in my quest to make a test app.
I am testin VMP for 2 full days now but it is not easy! You must admit that. Even with help.
So, can you help me for the last time with my testapp? Please
If it is not a problem can you please show me (explain in code, I understand) how to "LOCK "tryBtnClick" to the SERIAL NUMBER"? so when I press that button I get error unless valid serial is provided.
And also, if you can write a small Delphi application. It is just drag and drop. I want to see how would you handle it. I am coding an app that has elements mentioned below. App should look like this:
1. Blank Delphi Form - nothing to do here
2. Add Menu to form -> Edit -> here make 3 master menus, every master has 2 childs and every child has 1 baby. I hope you understand
In a nutshell, I need to disable 3 master menus for unregistered. After key is entered it all unlocks. As you see this is 5min of work so please help me
And if you have other advices about Menus, please say
. And also, please send me complete source so I can see what have you done.
Thanks a bunch!
And BTW - If you for some reason need IDA Pro 5.7 Advanced, we can do something about that.
I am testin VMP for 2 full days now but it is not easy! You must admit that. Even with help.
So, can you help me for the last time with my testapp? Please

If it is not a problem can you please show me (explain in code, I understand) how to "LOCK "tryBtnClick" to the SERIAL NUMBER"? so when I press that button I get error unless valid serial is provided.
And also, if you can write a small Delphi application. It is just drag and drop. I want to see how would you handle it. I am coding an app that has elements mentioned below. App should look like this:
1. Blank Delphi Form - nothing to do here
2. Add Menu to form -> Edit -> here make 3 master menus, every master has 2 childs and every child has 1 baby. I hope you understand

In a nutshell, I need to disable 3 master menus for unregistered. After key is entered it all unlocks. As you see this is 5min of work so please help me

And if you have other advices about Menus, please say

Thanks a bunch!
And BTW - If you for some reason need IDA Pro 5.7 Advanced, we can do something about that.
Re: Delphi License Problem
When I press the button in your application - I have this message:so when I press that button I get error unless valid serial is provided.
---------------------------
TestApp.vmp.exe
---------------------------
Protected code succesfully executed
---------------------------
ОК
---------------------------
Where you see the error message - I don`t understand.