|
|
1.1.1.10 root 1: /*
1.1.1.12 root 2: Legal Notice: Some portions of the source code contained in this file were
3: derived from the source code of Encryption for the Masses 2.02a, which is
4: Copyright (c) 1998-2000 Paul Le Roux and which is governed by the 'License
5: Agreement for Encryption for the Masses'. Modifications and additions to
6: the original source code (contained in this file) and all other portions of
7: this file are Copyright (c) 2003-2008 TrueCrypt Foundation and are governed
1.1.1.15! root 8: by the TrueCrypt License 2.5 the full text of which is contained in the
1.1.1.12 root 9: file License.txt included in TrueCrypt binary and source code distribution
1.1.1.10 root 10: packages. */
1.1.1.6 root 11:
1.1.1.12 root 12: #ifndef TC_HEADER_DLGCODE
13: #define TC_HEADER_DLGCODE
14:
1.1.1.6 root 15: #include "Common.h"
16: #include "Apidrvr.h"
17: #include "Keyfiles.h"
1.1.1.12 root 18: #include "Wipe.h"
1.1.1.6 root 19:
1.1.1.10 root 20: #ifdef __cplusplus
21: extern "C" {
22: #endif
23:
1.1.1.15! root 24:
1.1.1.6 root 25: /* IDs for dynamically generated GUI elements */
1.1.1.12 root 26: enum dynamic_gui_element_ids
27: {
28: IDPM_CHECK_FILESYS = 500001,
29: IDPM_REPAIR_FILESYS,
30: IDPM_OPEN_VOLUME,
31: IDM_SHOW_HIDE,
32: IDM_HOMEPAGE_SYSTRAY
33: };
34:
35: enum
36: {
37: TC_TBXID_LEGAL_NOTICES,
38: TC_TBXID_SYS_ENCRYPTION_PRETEST,
39: TC_TBXID_SYS_ENC_RESCUE_DISK
40: };
1.1.1.5 root 41:
1.1.1.15! root 42: #define TC_MUTEX_NAME_SYSENC "Global\\TrueCrypt System Encryption Wizard"
! 43: #define TC_MUTEX_NAME_APP_SETUP "Global\\TrueCrypt Setup"
! 44:
1.1.1.4 root 45: #define IDC_ABOUT 0x7fff /* ID for AboutBox on system menu in wm_user range */
46:
1.1.1.10 root 47: #define SELDEVFLAG_CONTAINS_PARTITIONS 0x00000001L
48: #define SELDEVFLAG_VIRTUAL_PARTITION 0x00000002L
1.1.1.11 root 49: #define SELDEVFLAG_REMOVABLE_HOST_DEVICE 0x00000004L
1.1.1.12 root 50: #define SELDEVFLAG_SYSTEM_PARTITION 0x00000008L
51: #define SELDEVFLAG_SYSTEM_DRIVE 0x00000010L
1.1.1.10 root 52:
1.1.1.15! root 53: #define EXCL_ACCESS_MAX_AUTO_RETRIES 500
! 54: #define EXCL_ACCESS_AUTO_RETRY_DELAY 10
! 55:
1.1.1.11 root 56: #define UNMOUNT_MAX_AUTO_RETRIES 10
1.1.1.5 root 57: #define UNMOUNT_AUTO_RETRY_DELAY 50
1.1 root 58:
1.1.1.15! root 59: // After the user receives the "Incorrect password" error this number of times in a row, we should automatically
! 60: // try using the embedded header backup (if any). This ensures that the "Incorrect password" message is reported faster
! 61: // initially (most such errors are really caused by supplying an incorrect password, not by header corruption).
! 62: #define TC_TRY_HEADER_BAK_AFTER_NBR_WRONG_PWD_TRIES 2
! 63:
1.1.1.10 root 64: #define MAX_MULTI_CHOICES 10 /* Maximum number of options for mutliple-choice dialog */
65:
1.1.1.12 root 66: #define FILE_CONFIGURATION "Configuration.xml"
67: #define FILE_SYSTEM_ENCRYPTION_CFG "System Encryption.xml"
1.1.1.6 root 68: #define FILE_DEFAULT_KEYFILES "Default Keyfiles.xml"
1.1.1.15! root 69: #define FILE_POST_INSTALL_CFG_TUTORIAL "Post-Install Task - Tutorial"
! 70: #define FILE_POST_INSTALL_CFG_RELEASE_NOTES "Post-Install Task - Release Notes"
1.1.1.6 root 71:
1.1.1.11 root 72: #ifndef USER_DEFAULT_SCREEN_DPI
73: #define USER_DEFAULT_SCREEN_DPI 96
74: #endif
75:
76: #if (USER_DEFAULT_SCREEN_DPI != 96)
77: #error Revision of GUI and graphics necessary, since everything assumes default screen DPI as 96 (note that 96 is the default on Windows 2000, XP, and Vista).
78: #endif
79:
1.1.1.15! root 80: enum
! 81: {
! 82: TC_POST_INSTALL_CFG_REMOVE_ALL = 0,
! 83: TC_POST_INSTALL_CFG_TUTORIAL,
! 84: TC_POST_INSTALL_CFG_RELEASE_NOTES
! 85: };
! 86:
1.1.1.9 root 87: extern char *LastDialogId;
1.1.1.12 root 88: extern char *ConfigBuffer;
1.1 root 89: extern char szHelpFile[TC_MAX_PATH];
1.1.1.6 root 90: extern char szHelpFile2[TC_MAX_PATH];
91: extern HFONT hFixedDigitFont;
1.1 root 92: extern HFONT hBoldFont;
93: extern HFONT hTitleFont;
94: extern HFONT hFixedFont;
95: extern HFONT hUserFont;
96: extern HFONT hUserUnderlineFont;
97: extern HFONT hUserBoldFont;
1.1.1.11 root 98: extern int ScreenDPI;
99: extern double DlgAspectRatio;
1.1.1.6 root 100: extern HWND MainDlg;
101: extern BOOL Silent;
1.1.1.9 root 102: extern BOOL bHistory;
1.1.1.6 root 103: extern BOOL bPreserveTimestamp;
1.1.1.12 root 104: extern BOOL bStartOnLogon;
105: extern BOOL bMountDevicesOnLogon;
106: extern BOOL bMountFavoritesOnLogon;
1.1.1.14 root 107: extern int HiddenSectorDetectionStatus;
1.1.1.6 root 108: extern wchar_t *lpszTitle;
1.1 root 109: extern int nCurrentOS;
110: extern int CurrentOSMajor;
111: extern int CurrentOSMinor;
1.1.1.9 root 112: extern BOOL RemoteSession;
1.1 root 113: extern HANDLE hDriver;
114: extern HINSTANCE hInst;
1.1.1.12 root 115: extern int SystemEncryptionStatus;
116: extern WipeAlgorithmId nWipeMode;
117: extern BOOL bSysPartitionSelected;
118: extern BOOL bSysDriveSelected;
119:
120: extern BOOL bHyperLinkBeingTracked;
1.1 root 121:
1.1.1.6 root 122: extern BOOL KeyFilesEnable;
123: extern KeyFile *FirstKeyFile;
124: extern KeyFilesDlgParam defaultKeyFilesParam;
1.1.1.10 root 125: extern BOOL UacElevated;
1.1.1.11 root 126: extern BOOL IgnoreWmDeviceChange;
1.1.1.6 root 127:
128: enum
129: {
130: WIN_UNKNOWN = 0,
131: WIN_31,
132: WIN_95,
133: WIN_98,
134: WIN_ME,
135: WIN_NT3,
136: WIN_NT4,
137: WIN_2000,
138: WIN_XP,
1.1.1.10 root 139: WIN_XP64,
140: WIN_SERVER_2003,
1.1.1.6 root 141: WIN_VISTA,
1.1.1.12 root 142: WIN_SERVER_2008,
1.1.1.10 root 143: WIN_VISTA_OR_LATER
1.1.1.6 root 144: };
1.1 root 145:
1.1.1.12 root 146: enum tc_app_msg_ids
147: {
148: /* WARNING: Changing these values or their meanings may cause incompatibility with other versions
149: (for example, if a new version of the TrueCrypt installer needed to shut down this version of
150: TrueCrypt during upgrade, it could fail or do something unwanted because the signal value would
151: be incorrect). When adding a new constant, verify that the value is unique within this block and
152: that it is less than WM_APP+16383. */
153:
154: // Common (inter-app)
155: TC_APPMSG_CLOSE_BKG_TASK = WM_APP + 4, // Changing this value will prevent smooth upgrades from pre-5.x versions
156: TC_APPMSG_SYSENC_CONFIG_UPDATE = WM_APP + 101,
157: TC_APPMSG_TASKBAR_ICON = WM_APP + 102,
158: TC_APPMSG_LOAD_TEXT_BOX_CONTENT = WM_APP + 103,
159: // Mount
160: TC_APPMSG_MOUNT_ENABLE_DISABLE_CONTROLS = WM_APP + 201,
161: TC_APPMSG_MOUNT_SHOW_WINDOW = WM_APP + 202,
1.1.1.13 root 162: TC_APPMSG_PREBOOT_PASSWORD_MODE = WM_APP + 203,
1.1.1.12 root 163: // Format
164: TC_APPMSG_FORMAT_THREAD_ENDED = WM_APP + 301,
165: TC_APPMSG_FORMAT_FINISHED = WM_APP + 302,
166: TC_APPMSG_FORMAT_USER_QUIT = WM_APP + 303,
167: TC_APPMSG_PERFORM_POST_WMINIT_TASKS = WM_APP + 304,
168: TC_APPMSG_PERFORM_POST_SYSENC_WMINIT_TASKS = WM_APP + 305,
169: // Setup
170: TC_APPMSG_INSTALL_SUCCESS = WM_APP + 401,
171: TC_APPMSG_UNINSTALL_SUCCESS = WM_APP + 402,
172: TC_APPMSG_EXTRACTION_SUCCESS = WM_APP + 403,
173: TC_APPMSG_INSTALL_FAILURE = WM_APP + 404,
174: TC_APPMSG_UNINSTALL_FAILURE = WM_APP + 405,
175: TC_APPMSG_EXTRACTION_FAILURE = WM_APP + 406,
176: TC_APPMSG_LOAD_LICENSE = WM_APP + 407
177: };
178:
1.1.1.15! root 179: enum system_encryption_status
1.1.1.12 root 180: {
181: /* WARNING: As these values are written to config files, if they or their meanings
182: are changed, incompatiblity with other versions may arise (upgrade, downgrade, etc.).
183: When adding a new constant, verify that the value is unique within this block. */
184: SYSENC_STATUS_NONE = 0,
1.1.1.15! root 185: SYSENC_STATUS_PRETEST = 200, // This may also mean that the OS is to be (or has been) copied to a hidden volume (to create a hidden OS).
1.1.1.12 root 186: SYSENC_STATUS_ENCRYPTING = 400,
187: SYSENC_STATUS_DECRYPTING = 600
188: };
189:
190: enum vol_creation_wizard_modes
191: {
192: WIZARD_MODE_FILE_CONTAINER = 0,
193: WIZARD_MODE_NONSYS_DEVICE,
194: WIZARD_MODE_SYS_DEVICE
195: };
196:
1.1.1.15! root 197:
! 198: typedef struct
! 199: {
! 200: BOOL VolumeIsOpen;
! 201:
! 202: CRYPTO_INFO *CryptoInfo;
! 203: BOOL IsDevice;
! 204: HANDLE HostFileHandle;
! 205: uint64 HostSize;
! 206:
! 207: BOOL TimestampsValid;
! 208: FILETIME CreationTime;
! 209: FILETIME LastWriteTime;
! 210: FILETIME LastAccessTime;
! 211:
! 212: } OpenVolumeContext;
! 213:
! 214:
1.1.1.12 root 215: #define DEFAULT_VOL_CREATION_WIZARD_MODE WIZARD_MODE_FILE_CONTAINER
216:
1.1 root 217: #define ICON_HAND MB_ICONHAND
218: #define YES_NO MB_YESNO
219:
220: #ifdef _UNICODE
221: #define WINMAIN wWinMain
222: #else
223: #define WINMAIN WinMain
224: #endif
225:
1.1.1.12 root 226: #define PRINT_TOOL "notepad"
1.1.1.6 root 227:
1.1 root 228: void cleanup ( void );
229: void LowerCaseCopy ( char *lpszDest , char *lpszSource );
230: void UpperCaseCopy ( char *lpszDest , char *lpszSource );
231: void CreateFullVolumePath ( char *lpszDiskFile , char *lpszFileName , BOOL *bDevice );
232: int FakeDosNameForDevice ( char *lpszDiskFile , char *lpszDosDevice , char *lpszCFDevice , BOOL bNameOnly );
233: int RemoveFakeDosName ( char *lpszDiskFile , char *lpszDosDevice );
1.1.1.6 root 234: void AbortProcess ( char *stringId );
1.1.1.4 root 235: void AbortProcessSilent ( void );
1.1 root 236: void *err_malloc ( size_t size );
237: char *err_strdup ( char *lpszText );
1.1.1.4 root 238: DWORD handleWin32Error ( HWND hwndDlg );
1.1.1.13 root 239: BOOL translateWin32Error ( wchar_t *lpszMsgBuf , int nWSizeOfBuf );
1.1.1.11 root 240: BOOL CALLBACK AboutDlgProc ( HWND hwndDlg , UINT msg , WPARAM wParam , LPARAM lParam );
1.1 root 241: BOOL IsButtonChecked ( HWND hButton );
242: void CheckButton ( HWND hButton );
1.1.1.12 root 243: void LeftPadString (char *szTmp, int len, int targetLen, char filler);
1.1 root 244: void ToSBCS ( LPWSTR lpszText );
245: void ToUNICODE ( char *lpszText );
246: void InitDialog ( HWND hwndDlg );
247: HDC CreateMemBitmap ( HINSTANCE hInstance , HWND hwnd , char *resource );
1.1.1.11 root 248: HBITMAP RenderBitmap ( char *resource , HWND hwndDest , int x , int y , int nWidth , int nHeight , BOOL bDirectRender , BOOL bKeepAspectRatio);
1.1.1.6 root 249: LRESULT CALLBACK RedTick ( HWND hwnd , UINT uMsg , WPARAM wParam , LPARAM lParam );
250: BOOL RegisterRedTick ( HINSTANCE hInstance );
251: BOOL UnregisterRedTick ( HINSTANCE hInstance );
1.1 root 252: LRESULT CALLBACK SplashDlgProc ( HWND hwnd , UINT uMsg , WPARAM wParam , LPARAM lParam );
253: void WaitCursor ( void );
254: void NormalCursor ( void );
255: void ArrowWaitCursor ( void );
1.1.1.10 root 256: void HandCursor ();
1.1.1.6 root 257: void AddComboPair (HWND hComboBox, char *lpszItem, int value);
258: void AddComboPairW (HWND hComboBox, wchar_t *lpszItem, int value);
259: void SelectAlgo ( HWND hComboBox , int *nCipher );
1.1.1.12 root 260: void PopulateWipeModeCombo (HWND hComboBox, BOOL bNA);
1.1 root 261: LRESULT CALLBACK CustomDlgProc ( HWND hwnd , UINT uMsg , WPARAM wParam , LPARAM lParam );
1.1.1.15! root 262: BOOL TCCreateMutex (volatile HANDLE *hMutex, char *name);
! 263: void TCCloseMutex (volatile HANDLE *hMutex);
! 264: BOOL MutexExistsOnSystem (char *name);
1.1.1.12 root 265: BOOL CreateSysEncMutex (void);
1.1.1.15! root 266: BOOL InstanceHasSysEncMutex (void);
1.1.1.12 root 267: void CloseSysEncMutex (void);
1.1.1.13 root 268: BOOL CreateDriverSetupMutex (void);
269: void CloseDriverSetupMutex (void);
1.1.1.15! root 270: BOOL CreateAppSetupMutex (void);
! 271: BOOL InstanceHasAppSetupMutex (void);
! 272: void CloseAppSetupMutex (void);
! 273: BOOL IsTrueCryptInstallerRunning (void);
1.1.1.12 root 274: BOOL LoadSysEncSettings (HWND hwndDlg);
1.1.1.15! root 275: void SavePostInstallTasksSettings (int command);
! 276: void DoPostInstallTasks (void);
1.1.1.12 root 277: BOOL SysEncryptionOrDecryptionRequired (void);
1.1.1.10 root 278: void InitApp ( HINSTANCE hInstance, char *lpszCommandLine );
1.1.1.6 root 279: void InitHelpFileName (void);
1.1 root 280: BOOL OpenDevice ( char *lpszPath , OPEN_TEST_STRUCT *driver );
1.1.1.13 root 281: void NotifyDriverOfTravelerMode (void);
1.1 root 282: int GetAvailableFixedDisks ( HWND hComboBox , char *lpszRootPath );
283: int GetAvailableRemovables ( HWND hComboBox , char *lpszRootPath );
1.1.1.12 root 284: int IsSystemDevicePath (char *path, HWND hwndDlg, BOOL bReliableRequired);
1.1.1.11 root 285: BOOL CALLBACK RawDevicesDlgProc ( HWND hwndDlg , UINT msg , WPARAM wParam , LPARAM lParam );
1.1.1.12 root 286: BOOL TextInfoDialogBox (int nID);
287: BOOL CALLBACK TextInfoDialogBoxDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
1.1.1.6 root 288: char * GetLegalNotices ();
1.1.1.11 root 289: BOOL CALLBACK BenchmarkDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
290: BOOL CALLBACK KeyfileGeneratorDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
1.1.1.10 root 291: BOOL CALLBACK MultiChoiceDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
1.1 root 292: int DriverAttach ( void );
1.1.1.6 root 293: BOOL CALLBACK CipherTestDialogProc ( HWND hwndDlg , UINT uMsg , WPARAM wParam , LPARAM lParam );
294: void ResetCipherTest ( HWND hwndDlg , int idTestCipher );
1.1.1.7 root 295: BOOL BrowseFiles (HWND hwndDlg, char *stringId, char *lpszFileName, BOOL keepHistory, BOOL saveMode);
1.1.1.10 root 296: BOOL BrowseFilesInDir (HWND hwndDlg, char *stringId, char *initialDir, char *lpszFileName, BOOL keepHistory, BOOL saveMode);
1.1.1.6 root 297: BOOL BrowseDirectories (HWND hWnd, char *lpszTitle, char *dirName);
1.1 root 298: void handleError ( HWND hwndDlg , int code );
1.1.1.6 root 299: void LocalizeDialog ( HWND hwnd, char *stringId );
1.1.1.4 root 300: void OpenVolumeExplorerWindow (int driveNo);
301: static BOOL CALLBACK CloseVolumeExplorerWindowsEnum( HWND hwnd, LPARAM driveNo);
302: BOOL CloseVolumeExplorerWindows (HWND hwnd, int driveNo);
303: BOOL CheckCapsLock (HWND hwnd, BOOL quiet);
1.1.1.10 root 304: BOOL CheckFileExtension (char *fileName);
1.1.1.15! root 305: void IncreaseWrongPwdRetryCount (int count);
! 306: void ResetWrongPwdRetryCount (void);
! 307: BOOL WrongPwdRetryCountOverLimit (void);
1.1.1.4 root 308: int GetFirstAvailableDrive ();
309: int GetLastAvailableDrive ();
310: BOOL IsDriveAvailable (int driveNo);
1.1.1.10 root 311: BOOL IsDeviceMounted (char *deviceName);
1.1.1.4 root 312: int DriverUnmountVolume (HWND hwndDlg, int nDosDriveNo, BOOL forced);
1.1.1.5 root 313: void BroadcastDeviceChange (WPARAM message, int nDosDriveNo, DWORD driveMap);
1.1.1.6 root 314: int MountVolume (HWND hwndDlg, int driveNo, char *volumePath, Password *password, BOOL cachePassword, BOOL sharedAccess, MountOptions *mountOptions, BOOL quiet, BOOL bReportWrongPassword);
1.1.1.4 root 315: BOOL UnmountVolume (HWND hwndDlg , int nDosDriveNo, BOOL forceUnmount);
316: BOOL IsPasswordCacheEmpty (void);
317: BOOL IsMountedVolume (char *volname);
1.1.1.11 root 318: int GetMountedVolumeDriveNo (char *volname);
1.1.1.4 root 319: BOOL IsAdmin (void);
1.1.1.10 root 320: BOOL IsUacSupported ();
1.1.1.4 root 321: BOOL ResolveSymbolicLink (PWSTR symLinkName, PWSTR targetName);
322: int GetDiskDeviceDriveLetter (PWSTR deviceName);
1.1.1.10 root 323: HANDLE DismountDrive (char *devName);
1.1.1.12 root 324: BOOL FileExists (const char *filePathPtr);
325: __int64 FindStringInFile (char *filePath, char* str, int strLen);
1.1.1.5 root 326: BOOL TCCopyFile (char *sourceFileName, char *destinationFile);
1.1.1.12 root 327: BOOL SaveBufferToFile (char *inputBuffer, char *destinationFile, DWORD inputLength, BOOL bAppend);
1.1.1.15! root 328: BOOL TCFlushFile (FILE *f);
1.1.1.12 root 329: BOOL PrintHardCopyTextUTF16 (wchar_t *text, char *title, int byteLen);
1.1.1.6 root 330: void GetSpeedString (unsigned __int64 speed, wchar_t *str);
1.1.1.5 root 331: BOOL IsNonInstallMode ();
1.1.1.6 root 332: BOOL DriverUnload ();
333: LRESULT SetCheckBox (HWND hwndDlg, int dlgItem, BOOL state);
334: BOOL GetCheckBox (HWND hwndDlg, int dlgItem);
1.1.1.12 root 335: void ManageStartupSeq (void);
1.1.1.6 root 336: void CleanLastVisitedMRU (void);
1.1.1.10 root 337: void ClearHistory (HWND hwndDlgItem);
1.1.1.6 root 338: LRESULT ListItemAdd (HWND list, int index, char *string);
339: LRESULT ListItemAddW (HWND list, int index, wchar_t *string);
340: LRESULT ListSubItemSet (HWND list, int index, int subIndex, char *string);
341: LRESULT ListSubItemSetW (HWND list, int index, int subIndex, wchar_t *string);
342: BOOL GetMountList (MOUNT_LIST_STRUCT *list);
343: int GetDriverRefCount ();
344: void GetSizeString (unsigned __int64 size, wchar_t *str);
1.1.1.12 root 345: __int64 GetFileSize64 (char *path);
346: BOOL LoadInt16 (char *filePath, int *result, __int64 fileOffset);
347: BOOL LoadInt32 (char *filePath, unsigned __int32 *result, __int64 fileOffset);
1.1.1.6 root 348: char *LoadFile (char *fileName, DWORD *size);
1.1.1.12 root 349: char *LoadFileBlock (char *fileName, __int64 fileOffset, int count);
1.1.1.10 root 350: char *GetModPath (char *path, int maxSize);
1.1.1.6 root 351: char *GetConfigPath (char *fileName);
1.1.1.12 root 352: char GetSystemDriveLetter (void);
1.1.1.6 root 353: void OpenPageHelp (HWND hwndDlg, int nPage);
354: int Info (char *stringId);
1.1.1.15! root 355: int InfoDirect (const wchar_t *msg);
1.1.1.6 root 356: int Warning (char *stringId);
1.1.1.15! root 357: int WarningTopMost (char *stringId);
! 358: int WarningDirect (const wchar_t *warnMsg);
1.1.1.6 root 359: int Error (char *stringId);
1.1.1.15! root 360: int ErrorDirect (const wchar_t *errMsg);
! 361: int ErrorTopMost (char *stringId);
1.1.1.6 root 362: int AskYesNo (char *stringId);
363: int AskNoYes (char *stringId);
1.1.1.12 root 364: int AskOkCancel (char *stringId);
1.1.1.6 root 365: int AskWarnYesNo (char *stringId);
366: int AskWarnNoYes (char *stringId);
1.1.1.11 root 367: int AskWarnNoYesString (wchar_t *string);
1.1.1.6 root 368: int AskWarnCancelOk (char *stringId);
1.1.1.12 root 369: int AskErrYesNo (char *stringId);
370: int AskErrNoYes (char *stringId);
1.1.1.10 root 371: int AskMultiChoice (void *strings[]);
1.1.1.6 root 372: BOOL ConfigWriteBegin ();
373: BOOL ConfigWriteEnd ();
374: BOOL ConfigWriteString (char *configKey, char *configValue);
375: BOOL ConfigWriteInt (char *configKey, int configValue);
376: int ConfigReadInt (char *configKey, int defaultValue);
377: char *ConfigReadString (char *configKey, char *defaultValue, char *str, int maxLen);
378: void RestoreDefaultKeyFilesParam (void);
379: BOOL LoadDefaultKeyFilesParam (void);
380: void Debug (char *format, ...);
381: void DebugMsgBox (char *format, ...);
382: BOOL Is64BitOs ();
1.1.1.15! root 383: BOOL IsHiddenOSRunning (void);
! 384: BOOL RestartComputer (void);
1.1.1.10 root 385: void Applink (char *dest, BOOL bSendOS, char *extraOutput);
1.1.1.6 root 386: char *RelativePath2Absolute (char *szFileName);
387: void CheckSystemAutoMount ();
388: BOOL CALLBACK CloseTCWindowsEnum( HWND hwnd, LPARAM lParam);
1.1.1.7 root 389: BOOL CALLBACK FindTCWindowEnum (HWND hwnd, LPARAM lParam);
1.1.1.6 root 390: BYTE *MapResource (char *resourceType, int resourceId, PDWORD size);
1.1.1.12 root 391: void InconsistencyResolved (char *msg);
1.1.1.8 root 392: BOOL SelectMultipleFiles (HWND hwndDlg, char *stringId, char *lpszFileName, BOOL keepHistory);
393: BOOL SelectMultipleFilesNext (char *lpszFileName);
1.1.1.9 root 394: void OpenOnlineHelp ();
1.1.1.10 root 395: BOOL GetPartitionInfo (char *deviceName, PPARTITION_INFORMATION rpartInfo);
396: BOOL GetDriveGeometry (char *deviceName, PDISK_GEOMETRY diskGeometry);
397: BOOL IsVolumeDeviceHosted (char *lpszDiskFile);
1.1.1.11 root 398: int CompensateXDPI (int val);
399: int CompensateYDPI (int val);
400: int CompensateDPIFont (int val);
1.1.1.10 root 401: int GetTextGfxWidth (HWND hwndDlgItem, wchar_t *text, HFONT hFont);
402: int GetTextGfxHeight (HWND hwndDlgItem, wchar_t *text, HFONT hFont);
403: BOOL ToHyperlink (HWND hwndDlg, UINT ctrlId);
1.1.1.12 root 404: void ToBootPwdField (HWND hwndDlg, UINT ctrlId);
1.1.1.11 root 405: void AccommodateTextField (HWND hwndDlg, UINT ctrlId, BOOL bFirstUpdate);
1.1.1.10 root 406: BOOL GetDriveLabel (int driveNo, wchar_t *label, int labelSize);
1.1.1.13 root 407: BOOL DoDriverInstall (HWND hwndDlg);
1.1.1.15! root 408: int OpenVolume (OpenVolumeContext *context, char *volumePath, Password *password, BOOL write, BOOL preserveTimestamps, BOOL useBackupHeader);
! 409: void CloseVolume (OpenVolumeContext *context);
! 410: int ReEncryptVolumeHeader (char *buffer, BOOL bBoot, CRYPTO_INFO *cryptoInfo, Password *password, BOOL wipeMode);
! 411: BOOL IsPagingFileActive ();
! 412: BOOL DisablePagingFile ();
1.1.1.10 root 413:
414: #ifdef __cplusplus
415: }
1.1.1.12 root 416: #endif
417:
418: #endif // TC_HEADER_DLGCODE
419:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.