/******************************************************************************\ * This is a part of the Microsoft Source Code Samples. * Copyright (C) 1995-1996 Microsoft Corporation. * All rights reserved. * This source code is only intended as a supplement to * Microsoft Development Tools and/or WinHelp documentation. * See these sources for detailed information regarding the * Microsoft samples programs. \******************************************************************************/ // // commands // #define ID_INSTALL 100 // // icons // #define EXE_ICON 300 // // typedefs // typedef struct tagINSTALLINFO { HINSTANCE hInst; // current instance int iWelcome; int iLicense; int iInstall_Type; int iCustom_Options1; int iCustom_Options2; int iCustom_Options3; int iCustom_Options4; int iInstall; int iCreateUninstall; int iUinstallIsAvailable; DWORD dwRequiredFreeSpaceNoUninstall; // in megabytes DWORD dwRequiredFreeSpaceWithUninstall; // in megabytes #ifdef DONTCOMPILE char pszUserName[MAX_PATH]; char pszCompany[MAX_PATH]; char pszProductIdString[MAX_PATH]; char pszEmailAddress[MAX_PATH]; char pszDestPath[MAX_PATH]; #endif // DONTCOMPILE BOOL InUnattendedMode; BOOL ForceAppsClosed; BOOL CreateUninstallDir; BOOL DontReboot; BOOL DoUsage; } INSTALLINFO; // // globals // extern INSTALLINFO setupInfo; // a structure containing the review information extern HWND hwndEdit; // handle to the main MLE extern TCHAR lpReview[MAX_BUF]; // Buffer for the review extern BOOL bCreated; // Keep us minimized once we are created extern BOOL bUninstallCommand; // Is it an uninstall // // Function prototypes // long APIENTRY MainWndProc(HWND, UINT, UINT, LONG); BOOL InitApplication(HANDLE); BOOL InitInstance(HANDLE, int); void RuntimeRegistration(INSTALLINFO*); // // simple win32 registry api wrappers // BOOL RegisterString(LPSTR pszKey, LPSTR pszValue, LPSTR pszData); BOOL GetRegString(LPSTR pszKey, LPSTR pszValue, LPSTR pszData); #define UNINSTALL_KEY TEXT("SoftWare\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\MyProduct")