Which is better portable or regular version. What is RePack, Portable and Silent Installation? Manual type of portable programs based on NSIS

💖 Do you like it? Share the link with your friends

My pleasure. Well, let's start with the fact that both the author of the article and you call these programs incorrectly. Moreover, almost the entire RuNet names these programs incorrectly. All because English word“portable”, which turned into “portable” due to someone’s light hand. In fact, this word is translated as “portable”. And the correct translation practically answers your second question. After all, portable means portable, mobile, etc. That is, a portable program is a program that can be transferred (on a flash drive, for example) and does not need to be installed on a computer. If we're going to explain it in a nutshell, we should start with the fact that when downloading a program, as a rule, it is specified on the source website whether the program is portable or installable. Let's move on. Regular (installable) programs are an executable file, which you run to begin the installation. As a rule, by default, programs are installed along the path C:\Program Files\XXX, where XXX is the program folder (most often named after the program). But the user, if desired, can install the program in another location he needs, and even on another disk (if there is one). And in this folder there is a lot of XXX different files, thanks to which the program works correctly. Also, installed programs are also registered in the registry, but that’s another story (I think you don’t need this). But portable programs do not require installation. The executable file itself launches the program. The user can place this file in any folder convenient for him, or on a flash drive to run later on another computer. I would also like to note that portable programs are different. There are some that require unpacking, not to be confused with installation. This applies to powerful programs, from a number of Adobe or games. Portable programs have many advantages: they do not require installation, they work on just installed Windows, all settings are saved in their database without affecting the system registry, they can be used on any computer running Windows, they take up much less space than the installation option and 99% of the time does not leave any traces on the PC. If you want to determine whether a program on your computer is portable or not, I suggest using this option: right-click on the program shortcut, select “Properties” from the drop-down menu and select the “Details” tab in the window that opens. If among the lines that appear there is a line “Path to folder” with a specified path, then the program is installable, but if there is no such line, then it is portable. Good luck.

Portable programs have a number of advantages compared to conventional software. They can be stored and run from flash drives, disks and any other removable media.

Portable versions do not change system files, so they can be run without administrator rights.

When installing full-fledged programs, files are added to the computer's registry that load the processor with work.

This is not the case in portable ones, since they simply start and use only RAM.

And finally, we all know that the fewer applications in general are installed on the operating system, the better and more stable it will work.

After closing, portable programs do not hang in background, do not leave any traces of their presence, do not climb into the Internet, overloading traffic, and are not treacherously installed in autoload.

Portable programs - be careful

Portable programs downloaded from dubious sites may contain Trojans and other malicious software. software. You should also not download them from various file hosting services.

It’s a good idea to get acquainted, for example, with the comments under the selected program, in which people often write whether it is good and whether it contains malicious add-ons.

It is better to download portable versions from official sites such as cameyo.com or PortableApps.com, although in this case not every program has its own portable version. These services contain a huge number of different programs.

There is also special software with which you can create portable options for different programs. But, unfortunately, it is not always possible to create a fully functional portable version in this case.

Download the portable program

So, open the browser and go to cameyo.com. On this site there are public access portable versions of only those programs that are free.

If you need portable versions of programs such as Photoshop or Microsoft Office, you can find them on the Internet.

On the cameyo.com portal to get acquainted with the programs you need to go to the section Online Packager and register.

Then go to the section Public Apps and select from the list provided the desired program, which is needed in a portable version.

Let it be graphics editor Paint.NET. There are buttons next to each program See details, Download And Run in browser. Their functionality is clear from the name. For example, click the button with details.

Open the folder with the downloaded program and run it. The portable program window immediately opens without preliminary installations or any settings.

Any downloaded portable program will also open, which will be no worse than the standard installed one, and in some ways even better, because using portable programs allows you to keep your computer clean.

Therefore, using portable programs to some extent is sometimes the best solution for a computer.

PortableApps service

On another portal, PortableApps.com, programs are sorted into groups, each group, in turn, is divided into categories, which is a fairly convenient solution.

For example, group Internet has a category like Browsers etc.

Each program has a detailed description, and here you can check whether it has Russian localization.

Downloading one program at a time from this service is a tedious task. You can make your work much easier if you install the PortableApps.com application, which is a shell for launching previously downloaded applications.

The disadvantage of portable versions, if we talk, for example, about browsers, is that you cannot save bookmarks and passwords for sites here. In all other respects, the portable version is full browser, no worse than standard.

Thus, on the portal cameyo.com and PortableApps.com you can find a lot useful programs portable versions that do not require installation on a computer and use them for your needs.

Among all computer programs, portable programs occupy a special place. This is due to the ease of use of such programs. You can run them from any media. Such applications are also easy to transport - they can be written to a regular flash drive or disk.


Let's look at the main question of this review - what is Portable software? Understanding this issue will always be helpful. Using Portable programs can significantly save disk space and reduce the consumption of system resources. Also, such programs are quite convenient for restoring system functionality after damage caused by the activity of malware and viruses.

What does Portable mean?

First of all, you need to define the meaning of the term Portable. We will proceed from the translation of this word from English. We use the interpretation of the concept in relation to computers. Portable if spoken in general outline, means portable, self-contained, portable. A portable program can be stored on any removable media. To start and operate it does not require installation on HDD laptop or computer. It’s probably not worth talking further about the benefits of such applications.

Distinctive features of portable programs from applications that require installation on a PC

In order to consider this issue in detail, we will create certain initial conditions. Let's assume we have a Portable version of some program. The advantages of this version in terms of using the application can be easily seen at simple example. When using a standard version of a software product, it is usually installed using installation file with EXE extension.

Running this file starts the installation process, which involves unpacking and copying the main modules of the installed program, databases, dynamic libraries and other information necessary when working with the installed application. Additionally, you may need to install drivers for the virtual devices that the application uses as controllers. An example of such a controller is the virtual sound amplifier driver used when working with the Guitar Rig program.

So what are portable programs? Unlike standard software and applications, portable software packages do not require installation on your hard drive. They are launched by using a single executable file, which is located directly in the program folder. You only need to download the portable version of the application you need, for example, through a torrent tracker and unpack the zipped files, and then go to the desired folder and run the executable file to start working with the program.

What's included in the portable package?

Let's try to figure out how the portable version differs from the point of view of its component composition. Do such applications have everything you need to run and correct operation? Serious programs cannot consist of only one executable file. Additional elements such as databases and dynamic libraries are required. Versions of the same software packages can differ greatly in their component composition. Therefore, it is important to make sure that your version of the program indicates that it is the Portable version.

How do such programs differ in terms of component composition? Note that such software products are significantly smaller in volume than installation distributions. However, Portable programs are no less effective than standard programs. Very often you can find quite interesting programs that are presented in just one file. Moreover, it does not have to be a file with the EXE extension.

Today there are many various options, based on the use of Java applications and self-extracting archives. Such files are launched provided that the necessary platforms and programs have already been installed on the system. For example, the loader with DepositeFiles is presented as a single file with the jar extension. This makes it possible to use it even when working with computer systems And mobile devices. All that is required is support for the Java platform.

How portable programs work

How do such portable programs work? Their operating principle is fundamentally different from stationary software, which is installed directly on personal computer. During the software installation process, not only the main components of the program are copied to the hard drive. Also made certain entries in the system registry, otherwise the operating system simply will not accept the application you installed. How are things going with the Portable versions?

How does the principle of their operation differ from the point of view of using the system registry? It is clear that such programs do not require installation. This means that when launched, the program will not create keys in the registry, and if it does, it will be temporary, which will be automatically deleted after finishing working with the application. The advantages of using such applications are obvious: the system will not load, and the launch of other programs and applications will be carried out quite quickly. In the same RAM, portable programs take up minimal memory. In most cases, the operation of such programs does not even affect the CPU load.

Where are portable programs used?

The areas of application of portable versions of programs can be listed endlessly. Of course, the most popular programs are programs for downloading files, as well as anti-virus scanners, boot managers and optimizers. You can also sometimes find portable versions of graphics and music packages.

Emulators operating systems

Almost the most popular programs today are those that allow you to fully emulate the operation of an operating system with all its functionality. Boot managers play a primary role when failures occur in such systems. They allow you not only to install the system from scratch, but also to create a semblance of an operating system with support for all drivers and devices used.

Let's say you have a disk with Windows emulator XP and boot manager. This means that you will be able to load a full-fledged operating system onto your computer and use most of its functions. Such applications are usually launched from a flash drive or optical disk. When booting, pay special attention to the BIOS. The download priority should be specified here. Depending on the manufacturer, the names of commands and sections may differ, but this does not change the entire essence of the process.

Diagnostic tools and antiviruses

Another popular area for using portable programs is anti-virus protection. Installed programs when the PC is damaged malware and viruses are not always able to perform a full scan. This also applies to startup items. There may be threats at the start of the operating system, but the installed antivirus program cannot remove them. In this case, the situation can be corrected using the portable version antivirus program, which starts before the operating system starts.

For example, the portable version of the Kaspersky Rescue Disc antivirus starts from a flash drive or disk even before the operating system starts. In addition, the program is capable of independently identifying and eliminating emerging threats that may be located in boot sectors, random access memory, e-mail or application cache. After loading the operating system, it is sometimes not possible to perform such actions. In most cases, the utility allows you to easily and quickly restore system functionality.

How to create a portable version of the program yourself

Do not delude yourself when it comes to creating a portable version of any type of program yourself. It is unlikely that it will be possible to create a portable version from professional applications. But for more simple programs This technique is quite applicable.

To create portable applications, you can use specialized utilities such as Thinstall Virtualization. You can do it even simpler and use regular WinRAR. The procedure for creating a portable application will be reduced to creating a continuous SFX archive. In the archive parameters you must specify the path “In the current folder”.

After this, go to the “Modes” tab and use the “Unpack to temporary folder” command. Opposite the information output line, you must check the box next to the “Hide all” item. On the “Text and Graphics” tab, you need to select an icon or logo. Now all that remains is to confirm the selected actions. After completing all the described procedures, you will receive a portable version of the program, available for copying to removable media.

Please remember that not all programs and applications are subject to these procedures. If a software package contains a large number of links to third-party databases or library files, it is best not to try to make a portable version of it. Firstly, you will spend an incredible amount of time on this process, and secondly, the quality of the result will not justify the effort.

Over the course of several years of my activity in creating portable software “Portable soft”, the need to write this article gradually arose.


Despite the growing popularity of these types of programs, It is obvious that many users do not have a basic understanding of what Portable soft is and it is enough for them to see the word Portable in the title of the news. This is exactly what many unscrupulous Internet users take advantage of, posting various kinds of crafts under the guise of portable software, thereby undermining the authority of serious authors. Let's try to figure out what "Portable soft" is all about. So that such questions do not arise
What is Portable soft (portable programs)…
What does "portable programs" mean? Portable programs - what is it?
How are Portable programs different from other programs?
"How is it done? Cool!"
“Is this safe? Otherwise, reinstalling half of the desktop software and cleaning the registry was not fun last time!”
"What exactly is the method used to do this? Is it safe? What about the traces in the registry and files?"

This article is aimed at reviewing some principles of creating portable software and (attention) signs of pseudo-portability, and the safety of cheese in a mousetrap. Because many users gradually realized that not everything called Portable should be perceived as a portable program.
You don’t know what portable software is, although you’ve been familiar with a computer for a long time? Not surprising. For some reason, such programs are not very advertised, although they are often very useful. So, we will fill the gaps in your knowledge.

I'll start with the definition of the word Portable. It has two meanings
- portable, self-contained (compact)
- portable (Technical)

This definition is given by Wikipedia and it is the closest in meaning.


"A portable application (also portable, standalone, and - inaccurately, as a tracing paper - ported; English portable application, portable app) is software that does not require an installation procedure to run, and can be completely stored on removable media information, which allows you to use this software on many computers. A portable application can be configured to read its configuration settings at startup from the same location where its own are stored program files. This does not imply, however, that the portable software, regardless of operating system, processor type, or hardware. This term should not be confused with portable software, which implies the ability to recompile and run the program after minor changes on a computer platform other than the original one."

Portable soft are compact analogues of conventional programs that do not require installation. Why is it time-consuming and tedious to install and configure applications? Portable programs are a way to evaluate them without installing them on your system. Just download the portable version, unpack the archive and your program is ready to launch! Do you have a flash drive? Then choose the programs you need in a portable version and make yourself more mobile!
Portable programs, portable, portable soft, portable software is a whole formed class of programs created mainly for launching and working with portable devices (USB flash/flash drives, CDs, DVDs, etc.) without installation.

There are several options for dividing portable software into types, but I stick to my point of view. I don’t pretend to be original or authoritarian.
So, there are figures who spout nonsense dividing portable devices into those launched from a CD, from a flash drive, portable from pre-installation and other terms from the field of finger sucking.

If you look at it, there are only two types:
True portable. Programs that run without installation and do not require registration store all their files and all settings in a virtual environment (sandbox folder). Such programs are convenient to use from external media. Once configured, they will use their settings on any other computer and leave no traces anywhere.
False portable. The program works without installation, but stores some of its settings not in its own directory, but in a common one. Thus, when transferring such a program to another computer, its settings will be lost. At the same time, the registry becomes clogged and additional files and folders are often created in a real environment.

Portable programs do not clog the system registry and, accordingly, create less load on the operating system.
With the growing popularity of portable software, they began to more serious and expanded requirements will be presented, in addition to portability.
Namely.
1. Complete isolation from the real system.
2. Clean operation (leaves no traces on the real system)
3. Launch and full functionality when transferred to another computer.
4. Does not conflict with the same software already installed as standard, i.e. registration, etc. does not fail from the stationary software, and in turn, the portable version works normally regardless of the installed brothers.

To understand how a portable program works, you need to have at least a rough idea of ​​how to install the software on a computer system. Without going into details, when installing the program, information is entered into the registry, files are copied to folders specified by the user, and, if necessary, to system and profile folders. Thus, the program informs the operating system (usually through the registry) about its presence and, as a result, shortcuts, file associations, items in context menu etc. Other applications usually also learn about your stay through the registry. new program or its module.

The system knows nothing about the portable program except that it simple folder with files, one of which has the extension exe.

Well, now let's move from the general to the main thing. What is portable software and what is it for?

Portable programs are used mainly to work from removable media, such as a flash drive or CD. However, in Lately Another purpose has become popular, namely the replacement of conventional programs with portable ones. This makes it possible, when reinstalling the operating system, to avoid wasting time saving personal data (browser bookmarks, ICQ correspondence history, emails V mail clients etc.), as well as installing and configuring programs. This can be achieved due to the fact that properly made portable programs are absolutely independent of the operating system. You can temporarily copy them to a CD, format the hard drive, install a new OS, then return the programs back and all settings, along with temporary files, are saved.

Advantages of portable (portable) software:

After reinstalling the system, the portable program does not need to be installed or configured - everything is ready for use when the Desktop appears on the monitor.
You can take portable software with you to work, on a visit or to an Internet cafe. You can work with portable programs immediately after connecting the portable media to your computer.
Portable programs (applications) save their settings in their native folder, thereby not loading the system registry.
Portable (portable version) program is not new software, but a special edition of a previously familiar application.

But this is not the only benefit of portable software.

Let's say you're migrating to free software. Do you want to try, for example, the vector graphics editor Inkscape ( free analogue Corel Draw). Download the portable version, unpack it, and try as much as your heart desires. If you like it, then you can install the regular version.
The next advantage is mobility. To come to someone and work on their computer in the aforementioned Inkscape editor, you don’t need to install this program on someone else’s machine. It is enough to bring it with you on a flash drive, having previously copied there the entire folder that was obtained after unpacking.
You can also check email without leaving any cache on someone else's computer. To do this, just write Mozilla Thunderbird Portable to a flash drive. They plugged it into the USB, took the mail, and took it with them.
Well, since modern flash drives are very capacious, you can record a whole set of portable software on them. For example, browser Mozilla Firefox(so as not to leave anything in the cache after surfing the Internet), GoldenDict dictionary (if you are a translator, the portable version will be very useful), COMODO System-Cleaner (for quick cleaning registry and all sorts of rubbish; will be useful for first responders computer help), and so on.

When you come to visit a friend, you will not need to beg him to install the software that you need on his computer. In addition, it is very easy to share portable programs, because most of them are free software (or Freeware), as mentioned above. Just rewrote the folder with the desired application- and that’s it, let the person try it. If you like it, you'll get the regular version and install it forever. If you don't like it, there won't be any unpleasant consequences, it will simply delete the folder.

And now a huge BUT!
The functionality of individual parts of the software when transferred to another machine does not at all mean the functionality of the software itself.
A striking example from the history of porting - which has been walking around the Russian Internet for a long time Adobe Photoshop CS3 Micro. Very smart people cured the Photoshop.exe executable file so that it forgot about checking the license. Not very smart people replaced this file in their program installation. Completely brainless people tore out the C:\\Program Files\\Adobe\\Photoshop folder onto their flash drive and just launched it for a test. And when they saw that the program had started, they shouted “portable”.
What happened next? Although this program looked workable, it did at least the following bugs on the computer of a gullible user:
- Garbage in the registry.
- Garbage in the user profile.
- Almost mandatory registration meeting with installed packages the same company (what a joy for someone who boasted of such a craft on their computer).
- Inability to work with text.
What mistakes were made?
1. A program is not always (almost never) a folder with a bunch of files. These are registry entries (registration, settings, connection with configs of other programs), OS config entries, additional files in multiple locations in system directories and user profiles.
2. When taken out of a suitable environment (where everything is configured for its operation, i.e. where it is installed), the program behaves unpredictably (since the developer often does not anticipate such a situation), namely: it creates its own entries in the registry and confs, files in system directories, often overwriting existing ones.
Finereader 10 pseudo-portables were doing the same thing.

Naturally, user programs that require integration into the system are difficult to make portable. Especially applications in which files should open by default.
How to understand the variety of portable software posted on the Internet?

I'll start with True portable, what I collect myself. Application virtualization using special programs, VMware ThinApp, Spoon Studio (Xenocode). There are other analogues, but these two are the most serious.
Virtualization- placing the program in a virtual container (read archive, hence the huge advantage - compression). When this container is launched, the program “thinks” that all registry entries and files are already in place - in the system (nothing is copied or written anywhere - another plus). The virus inside the container of such a program is disarmed, because can't write anything to the real system - only to the sandbox. This refers to the often expressed claims that the antivirus is complaining about the file. I would like to clarify that today, all the most serious antiviruses have added files created in VMware ThinApp and Spoon Studio (Xenocode) to exceptions, and they usually yell deficiencies - paranoia like Avast.

Virtualized portable program (Portable application) runs in a small virtual environment (VM) that includes registry keys, files, and other components necessary to get the portable application up and running.
Such a virtual environment works as a layer between the portable application and the OS (operating system), which avoids conflicts between applications. The virtual environment (VM) is responsible for loading the "virtualized" application into memory and for managing the "virtual" file system and registry.

Thanks to the "virtual registry module", "virtualized" keys are made available to the "virtualized" application and all its accompanying files loaded through the VM. If the necessary keys are not in the “virtual” registry, they will be requested in the real system registry. VM also allows you to create a "virtual" file system in your executable file, which will be accessible only to your application. At runtime, your application can access both "virtual" files and real files. file system, without distinguishing them from each other. All changes that the application makes to the system during operation are not saved directly to the system, but are recorded in a separate directory - the “sandbox”. The role of a sandbox can be, for example, the directory from which the application is launched or any other directory. In this case, the local operating system essentially remains unchanged. This is the main advantage of such laptops, coupled with the ability to work in user mode.

The mechanism of operation of virtualized programs (virtual) created by these products is different for everyone and, in general, this is a “company secret”.

In my work I use VMware ThinApp (nee Thinstall), the most popular instrument for creating portable programs. But there are limitations that apply to ThinApp.
ThinApp cannot virtualize applications that require installation of drivers at the kernel level, antiviruses, personal firewalls, scanner and printer drivers.
Some types of applications may not work correctly - these are: applications that require installation of device drivers, integrate into Explorer, install DCOM services or global hooks. For example, if you create a portable Adobe version Acrobat, you can use it to open, edit and save PDF files, but you will not be able to use the PDF printer driver.
However, some of the limitations can be circumvented by using VBScript scripts (or launcher technology), which install the necessary components into the real system. Scripts are integrated into ThinApp projects. Meanwhile, by bypassing one limitation, you may encounter another; such programs may not work on an OS with non-administrator rights.

Program (Xenocode) Spoon Virtual Application Studio

A worthy alternative and direct competitor to VMware ThinApp, only less popular. By and large, the capabilities and limitations of Xenocode and ThinApp are similar, therefore, without going into details, only the obvious differences are outlined. but there are some disadvantages.
- the number of functions for setting up a project is incomparably small;
- sometimes leaves traces of its portables in the system, in the form of several empty folders and registry keys. Otherwise the differences for ordinary users are not of fundamental importance.

You also need to understand That well-assembled and tested portable software does not give a 100% guarantee that it will work on any declared systems, you must read the description of the program and system requirements. And therefore, it is advisable to keep both the portable and installation versions of the program.

False portable there are many varieties. All their portability ends with portability; they do not fulfill all other requirements.
The most common and most dangerous to use are scripted assemblies. using PortableApps technology. I won’t describe it, but below I’ll show you how to define it. The use of such assemblies strictly at the users' own risk.
I can recommend one thing! Never use such assemblies in workplaces, the consequences may be the most severe for you. This is especially recommended for those who use on a computer licensed software, usually PortableApps kills the registration of such software.

There is another subtype of pseudo-portables. Native (initially portable, not requiring installation), As a rule, they are created by the authors of the programs themselves. This is a normal unboxing installation version, with a set of files for the program to work. It is absolutely not isolated from the system in any way and, in fact, it is the same installation called “Portable” by the developer, and accordingly it is garbage in the system. All the necessary elements for the operation of such a portable program are located in one directory, and no registry keys are required to run it. (not always). Initially, the portable program saves its settings in its own directory - in the same folder where it is located. This definition of inherently portable programs somewhat idealized, since among this type of programs there are those that require installed Windows components (Net, Java, etc.).
In order to convey their product to the user in the form in which it was intended, developers often package their "originally portable programs" into the installation executable file.
Using the same principle, many unscrupulous users who do not have basic knowledge in the field of creating portable software create pseudoports. For them, the main thing is that the program, when transferred to another place, starts and works, and the fact that it may not perform all of its tasks, or even harm the system, they don’t care.

Methods of detection
If the PortableApps technology is used, the portable sometimes asks where to install (this is simply unpacking from the file _Name_.paf.exe). In the final folder you can find an executable running NSIS or AutoIt and a folder (for example, called App) where all the software just lies. And if the technology is different, you can try to unpack the launcher in Universal Extractor, it may even turn out to be just an SFX archive.


Virtualized portable program, this is one executable file and a sandbox folder created after starting the program with approximately the same set of files.


By the way, there is also a nuance here. It all depends on the experience of the port app builder. If a person is literate, then such a folder is created next to the startup file, but sometimes due to illiteracy, such a folder is placed in the user directory on system partition. Also, the presence of a pop-up window in the right corner of your desktop indicates poor-quality virtualization. This is a very serious problem, so if you encounter this phenomenon, it is better not to use such an assembly.

That's basically all I wanted to explain to users of portable software. I hope my article will help you further separate the wheat from the chaff. Good luck!

Now the actual methods of making portable software and, as a consequence, its appearance and (importantly) signs.

I will arbitrarily divide Portable into 3 groups and evaluate its compliance with the portability conditions (1)(2)(3) with a score of (-)(-+)(+-)(+), which means fulfillment of the condition (unlikely)(not sufficient)( enough (probably).

1. The software is initially portable (native portability)
Such software
- you can either write it yourself; (1+)(2+)(3+)
Those. It is assumed that when writing software you are guided by these three points.
- can optionally (at your discretion) become portable (example - KMPlayer, Aimp, Total Commander); (1+)(2+-)(3+-)
This means that the developer, for the sake of portability or compatibility with other operating systems, left the ability to store settings and additions in the program folder (in ini, xml, etc.). And if the program also understands relative paths (instead of C:\\Program Files\\Opera\\program, specify .\\program). There are many ways to achieve native portability in this case: editing a certain main program config, other configs, launching with a parameter (all Mozilla products).
- can work without installation (being extracted from Program Files), i.e. It’s already portable (well, plus or minus portable), but you had no idea. (1-+)(2-)(3-+)

Methods of detection
Only one thing can be said about the methods for determining such a portal: if the software does not belong to the following two categories, it belongs here. Well, also in comparison. If we see a folder with a portable program almost identical in content to the same installed program, then this is either hackwork or native portability.

Now dancing with a tambourine. The software is capricious, and maybe even with registration. But you need to port it.

2. PortableApps
This is a portability technology that has its supporters.
In this case, in the program NSIS (Nullsoft Scriptable Install System - a common free and powerful creator of installers based on scripts from the creators of Winamp) or AuitoIt is done boot file to the main program, which
- preinstalls registry entries and some necessary files into the system,
- launches the main program,
- after work, he cleans it all, trying to remember the software settings on the flash drive.
I’ll say right away that I personally don’t like this method, because I don’t like interference in the system without my knowledge.
In other cases, you don’t even want to think what will happen if the light turns off while a “powerful” and complex software made in this way is working. All unpicked files and registry entries will remain in the machine. By the way, various viruses are most often present in such portals if you take them from an unverified source.
A trusted source can be considered the PortableApps movement itself, which has standardized this method of portability and provides everyone with the necessary tools and documentation.
The downside is that this movement is trying to port, using its own methodology, almost everything indiscriminately, and also to provide tools for everyone who wants it, but doesn’t really understand it. The result is a lot of low-quality software made using questionable technology. A huge disadvantage is often the inability to run a program without administrator rights (what kind of administrator would allow the user to write anywhere in the system).

Methods of detection
I will give only a more or less sane method: (rpm) Properties -> (on) Version. And there you can sometimes see the name of the virtualizer, its version and the name of the license owner.

What stands apart from all this is the launcher method. Those. It is not the program that is launched, but the launcher, which directly in memory tells the main program what to save where and how to behave. Making a launcher is a “black magic” procedure that is often inaccessible even to the developers themselves (Remember the third-party launcher for Opera Portable, which turns any version of Opera into a portable one).

What about *NIXs?
I would like to ask: “Is it possible to implement similar packaging for *NIX packages scattered throughout the hard drive?”
Let's discard the case (although one might also think) when it is necessary to compile from source code. Now let's look inside different software packages: RPM, DEB, etc. What's in there? Correctly, the program files themselves, information about where they should be located in the final system and config entries. And now we think: “What prevents us from making not installation files, but packages, which in terms of content are the same, only they are a launchable file?”
Nothing seems to interfere, especially considering that well-configured Wine runs perfectly on Windows virtual packages. But it’s precisely in this phrase “is an executable file” that there is a catch: unlike the Windows PE specification (Portable Executable is almost any EXE file), in *NIX one can rather say that it is not the program that is executed in the system, but the system executes the executable file on demand (this is the basis of *NIX security and reliability).

The easiest way to make such a program portable (i.e. restore its original portability) is to install (install) the application on the system to gain free access to the program folder, then copy this entire program folder to another location, and then uninstall installed program.
Just first you need to check this program for its portability, make sure that the program settings are actually saved in the same folder and the program does not require the installation of any additional modules.
Manual portable programs (PortableApps.com Format - Apps / PAF), which, when starting and closing a portable program, only simulate the process of installing and uninstalling the program into a real system.
Manual portable programs made according to the PortableApps.com Format (PAF / Apps) type work according to a scheme reminiscent of installing and uninstalling applications. They consist of a launcher (in Russian: launcher - i.e. a file for launching a Portable program), a folder with the program itself and its files, and plus launcher settings files (or others that are related to the operation of the launcher). The latter may not exist if the settings of the Portable program are specified in the launcher itself. It is through the launcher that the main exe file of the Portable program is launched. The directory in such a portable with the main program to be launched and its files is considered to be the folder in which the application is installed.

To make it more clear to beginners how it works, I’ll describe approximate algorithm Launcher operation (the simplest):

1. Created backup copy registry branches (or configuration files) and files located outside the installed folder, on which the operation of the application depends. (This is done in case the system has the same or a different version of this application installed).
2. Importing the data necessary for the application into the registry, as well as copying those files that should be located outside the portable folder (for example, in .../System32).
3. Launch the main program and wait for it to close.
4. (Upon completion) Export settings from the registry (or configuration files) again to portable.
5. Clears traces of the program (more precisely, deleting temporary files).
6. Restoring to the system those registry keys and files that were reserved in the 1st step of the algorithm (i.e. when starting the Portable program).

On this moment Most handheld portable programs compile to NSIS and AutoIt. More precisely, a script is written in one of the languages ​​of these programs, implementing the above-described algorithm, and compiled into the launcher. In fact, any scripting language similar in capabilities to NSIS and AutoIt, which can be compiled into an executable file, is suitable for creating a launcher.

Manual type of portable programs based on NSIS

NSIS - a system for creating installers for Microsoft Windows with open source codes, created by Nullsoft, founded by the creators of the Winamp program. You can connect many plugins to the NSIS package, allowing you to work with the registry, install drivers, perform mathematical calculations, update files and much more.
The process of fixing changes in the system during installation can be implemented in some uninstaller that supports creating and comparing snapshots, for example in Total Uninstall or special programs, such as SysTracer and others like them (see paragraphs 1-4 of the general algorithm above). Afterwards, a project is created in the form of a folder structure: for example, installed files are transferred to one of them, the received registry data is transferred to another, etc. and a script is written, which is then compiled (see paragraphs 5-6 of the general algorithm above). What the project will be depends on the program and your preferences.

Portables are made approximately in this vein in such online communities as PortableApps and PortableAppz. These sites describe the technology, provide examples and templates for creating such portable programs.

An article about the specifics of creating portable programs in the PAF format (PortableApps.com Format) based on NSIS scripts can be viewed here:
"How to create a portable program in the PortableApps (PAF) format"

Manual type of portable programs based on AutoIt

AutoIt is a program designed to automate frequently performed actions in Windows. The utility allows you to repeat keyboard keystrokes, mouse movements and clicks, manipulations with application windows, working with the clipboard and other user actions. To avoid repetition, the AutoIt language arsenal for creating a portable program is similar in capabilities to the NSIS language, so everything that was described above for NSIS is also suitable for AutoIt. Unless in the latter you can also implement work with windows.

Portable sculptors from Italy took a slightly different path than PortableApps and created a launcher compiled in AutoIt. Their project is called winPenPack, and the template itself with a launcher: X-Launcher. The bottom line is that the launcher reads information from the ini file, which contains the settings for launching the program, and the files themselves must be located in the appropriate folders of this template. Due to the limited capabilities of the launcher, only moderately complex programs can be ported using this method.

Several main reasons why manual portable programs do not work:
- The ported application itself does not work (for example, a crooked crack).
- The application requires installed Windows components or other programs.
- The project does not take into account those files, registry keys or components that are responsible for the operation of the program.
- Errors in the script (launcher).
- Limited access to directories and OS resources used by the portable program.

Conclusion
Using the method described above, you can port almost any application, and the arsenal of AutoIt and NSIS languages ​​gives flight to your imagination. However, it should be taken into account that the time to start the program is directly proportional to the number of copied and backed up files and registry keys.
Due to the fact that manual portable ones work with real system, they may be unsafe. On the one hand, a portable program obtained from an unreliable source may contain a virus. On the other hand, a poorly assembled application will lead to errors in the system or programs installed in the OS.

Failures in the operation of virtualized programs can occur for the following reasons:

As with handheld portables, these are errors in the portable application, missing elements in the real environment or in the project.
- Errors in settings (often in isolation modes)
- At the time of publication, programs compiled in ThinApp (versions 4.0.x) are not officially supported on Windows 7.
- Some programs have built-in protection against virtualization.
- Other errors, possibly related to the technology of the virtual environment (or the virtual environment does not function in the OS, or the application does not interact correctly with the virtual environment).

Date: 06/30/2019

Process Explorer is free utility for monitoring system Windows processes, which provides more detailed information than the standard task manager. This program will be useful in solving problems with DLL versions and descriptor leaks, as well as for understanding the principles of operation of software and the operating system.

Date: 06/30/2019

CPU-Z Portable - portable version of the free diagnostic tool CPU-Z utilities, the program does not require installation, and is designed to obtain detailed information about the PC hardware configuration (primarily the processor) in an operating environment Windows systems, including Windows 10.

Date: 06/30/2019

Maxthon Portable is a portable version of a fast and convenient web browser for Windows that does not require installation. Maxthon 5 is a uniquely designed browser that can work and easily switch between two browser engines (WebKit and Trident), and improved support for the HTML5 standard combined with a lot of original features will make Maxthon an effective and reliable assistant on the Internet.

Date: 06/30/2019

Opera Browser Portable is a portable Russian version of the popular browser. The portable version of the browser from Opera Software, unlike the traditional installed version, stores all settings, temporary files, and so on in its own folder. On our website, you can download without registration the most current portable version of the fast and reliable Opera web browser.

Date: 06/30/2019

CCleaner Portable - portable version free program CCleaner for optimization, customization, and Windows cleaning. The portable version of this utility does not require installation and can be launched not only from a flash drive or other removable media, but also from any regular desktop computer or laptop; to run the program, just unzip the archive with the portable version of the cleaner (also on our website



tell friends