Page 1 of 1

How it Works

Posted: Sat Feb 20, 2021 3:45 am
by Virtualize
Hi Everyone,
I already read the section (how it works) and it said enigma embed special loader and ... but I want to know how it really works in explanatory way. And also answer these questions:
I want to know-
1. how enigma handle a program to be virtualize when it started ?
2.Is there any performance impact if I make many or one package to load program ?
3.How it read dll files from package means its first extract package then read dlls or other files or directly read from package?
4.When program want specific dll then enigma load that dll on demand or it load all dlls and other files from package immediately after execution of program and reduce performance ?

Thanks in advance
and keep :lol:

Re: How it Works

Posted: Sat Feb 20, 2021 8:59 am
by Enigma
Hi, some of your questions may contain technology secrets, which we are not willing to share :) Until you are licensed customer and want to know this information to make it does not break any law or copyrights (this way you need to contact us directly at

Looks like you are interesting Virtual Box feature? If yes, the only thing I could say is that it does not extract any real file data to the disk, Enigma emulates files in application memory only.

Re: How it Works

Posted: Sun Feb 21, 2021 5:57 am
by Virtualize
Ok ,I don't want you to share your secret. ;)
I only want some answers to make my portable program performance better If you are able to give answers of below ones then please give answers straight forward without revealing secret.

Suppose Scenario
I have test.exe and its data in test_data folder and also its data is >10GB and I want to make it portable. I make it portable in my 3 ways -
1.i pack only text.exe to be virtualised and allow external package as %default folder% to load files that needed to run from its default folder and then after packing text.exe copy and paste the real test_data folder in default directory of test to run.
2.Repeat above process but making multiple packages(data1.dat,data2.dat,...) of test_data folder instead of pasting real folder in default directory and allow external packages as %default folder%/data1.dat ,%default folder%/data2.dat and so on.
3.Make Single virtualized Executable(named:text_boxed.exe) that contain text.exe and test_data.

I have 3 questions based on above scenario -
1.Which 1 of 3 ways is best to make program portable in matter of program performance?
2.In 1st way can program is fully virtualised (means when it load dll files from %default folder%/test_data folder then all dll files are also virtualized) or it lose virtualization(means dlls are not virtualised) ?
3.making multiple or single packages of test_data increase or decrease or remain same in performance as compared to original program ?

Thanks in advance
( to reduce emission of carbon from server with another thanks message and reduce global warming)
:mrgreen: :mrgreen: :mrgreen:

Re: How it Works

Posted: Wed Feb 24, 2021 11:28 am
by Enigma

Third way is impossible to do. Single exe has limitation of it's size, it can't be bigger than 2 Gb. Since you have 10Gb, then this way won't work for you.

First way looks strange, if you plan to use Virtual Box, then why do you need to copy original files? But If you just want to protect test.exe, without using Virtual Box, this way is OK.

The most correct way is the second. You will have to build external packages separately, and the protected program will load them from default folder. This way will decrease performance, since program will real virtual files from protected environment, but it is not visible for most of the cases. Try this way, if you find the performance decreased a lot, then back the first case you described.