VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Main/Application.h
blob: 82c6b00e051c3a6807334be296aaf35a4b939f43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*
 Derived from source code of TrueCrypt 7.1a, which is
 Copyright (c) 2008-2012 TrueCrypt Developers Association and which is governed
 by the TrueCrypt License 3.0.

 Modifications and additions to the original source code (contained in this file)
 and all other portions of this file are Copyright (c) 2013-2017 IDRIX
 and are governed by the Apache License 2.0 the full text of which is
 contained in the file License.txt included in VeraCrypt binary and source
 code distribution packages.
*/

#ifndef TC_HEADER_Main_AppMain
#define TC_HEADER_Main_AppMain

#include "Main.h"
#include "UserInterface.h"
#include "UserInterfaceType.h"

namespace VeraCrypt
{
	class Application
	{
	public:
		static wxApp* CreateConsoleApp ();
		static wxApp* CreateGuiApp ();
		static FilePath GetConfigFilePath (const wxString &configFileName, bool createConfigDir = false);
		static DirectoryPath GetExecutableDirectory ();
		static FilePath GetExecutablePath ();
		static int GetExitCode () { return ExitCode; }
		static wstring GetName () { return L"VeraCrypt"; }
		static UserInterface *GetUserInterface () { return mUserInterface; }
		static UserInterfaceType::Enum GetUserInterfaceType () { return mUserInterfaceType; }
		static void Initialize (UserInterfaceType::Enum type);
		static void SetExitCode (int code) { ExitCode = code; }

	protected:
		static int ExitCode;
		static UserInterface *mUserInterface;
		static UserInterfaceType::Enum mUserInterfaceType;
	};
}

#endif // TC_HEADER_Main_AppMain
n>a></li> <li><a class="active" href="Documentation.html">Documentation</a></li> <li><a href="Donation.html">Donate</a></li> <li><a href="https://sourceforge.net/p/veracrypt/discussion/" target="_blank">Forums</a></li> </ul> </div> <div> <p> <a href="Documentation.html">Documentation</a> <img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> <a href="Miscellaneous.html">Miscellaneous</a> <img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> <a href="VeraCrypt%20Background%20Task.html">Background Task</a> </p></div> <div class="wikidoc"> <div> <h1>VeraCrypt Background Task</h1> <p>When the main VeraCrypt window is closed, the VeraCrypt Background Task takes care of the following tasks/functions:</p> <ol> <li>Hot keys </li><li>Auto-dismount (e.g., upon logoff, inadvertent host device removal, time-out, etc.) </li><li>Auto-mount of favorite volumes </li><li>Notifications (e.g., when damage to hidden volume is prevented) </li><li>Tray icon </li></ol> <p>WARNING: If neither the VeraCrypt Background Task nor VeraCrypt is running, the above- mentioned tasks/functions are disabled.<br> <br> The VeraCrypt Background Task is actually the Vera<em>Crypt.exe</em> application, which continues running in the background after you close the main VeraCrypt window. Whether it is running or not can be determined by looking at the system tray area. If you can see the VeraCrypt icon there, then the VeraCrypt Background Task is running. You can click the icon to open the main VeraCrypt window. Right-click on the icon opens a popup menu with various VeraCrypt-related functions.<br> <br> You can shut down the Background Task at any time by right-clicking the VeraCrypt tray icon and selecting <em>Exit</em>. If you need to disable the VeraCrypt Background Task completely and permanently, select <em>Settings</em> -&gt; <em>Preferences</em> and uncheck the option <em>Enabled</em> in the Vera<em>Crypt Background Task</em> area of the <em>Preferences</em> dialog window.</p> </div> </div><div class="ClearBoth"></div></body></html>