📄 installdata.h
字号:
/* * InstallData.h - part of jEditLauncher package * Copyright (C) 2001 John Gellene * jgellene@nyc.rr.com * * Notwithstanding the terms of the General Public License, the author grants * permission to compile and link object code generated by the compilation of * this program with object code and libraries that are not subject to the * GNU General Public License, provided that the executable output of such * compilation shall be distributed with source code on substantially the * same basis as the jEditLauncher package of which this program is a part. * By way of example, a distribution would satisfy this condition if it * included a working makefile for any freely available make utility that * runs on the Windows family of operating systems. This condition does not * require a licensee of this software to distribute any proprietary software * (including header files and libraries) that is licensed under terms * prohibiting redistribution to third parties. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * * $Id: InstallData.h,v 1.8 2001/08/02 04:43:50 jgellene Exp $ */#if !defined(__INSTALLIMPL_H__)#define __INSTALLIMPL_H__#include "resource.h"template<int MAJORVER, int MINORVER, int IDVER, int RANGE, int IDVERNAME>struct InstallVerData{ static enum { Version = (MAJORVER << 16) | MINORVER, MajorVersion = MAJORVER, MinorVersion = MINORVER, IDCurrentGUID = IDVER, IDSubjectVerName = IDVERNAME };};// version specific elementstypedef InstallVerData<3, 3, IDS_JEL_VERSION_02, 8, IDS_JEL_VERSIONNAME_02> InstallCurVerData;// end version-specifc elementsstruct InstallData{ WTL::CString strJavaHome, strInstallDir, strInstallName, strInstallPath, strInstallFinalPath, strOldPath, strInstallGUID, strInstallVersion, strApp, strVersionLabel; bool bRebootRequired, bUsingTempFileName, bIsWinNT; DWORD dwInstalledVersions; DWORD nInstalledVersions; int nIndexSubjectVer; int nIndexOverwrittenVer; int nIndexCurrentVer; int nIndexNewPrimaryVer; WTL::CString* arPathNames; // length is nInstalledVersions WTL::CString* arVersionNames; WTL::CString* arGUID; InstallData(const char* szJavaHome, const char* szInstallPath) : strJavaHome(szJavaHome), strInstallDir(szInstallPath), strInstallName(_T("jeshlstb.dl_")), strInstallGUID((LPCSTR)InstallCurVerData::IDCurrentGUID), strInstallVersion((LPCSTR)InstallCurVerData::IDSubjectVerName), strApp(_T("jEditLauncher")), strVersionLabel(_T("jEditVersion")), bRebootRequired(false), bUsingTempFileName(true), bIsWinNT(false), dwInstalledVersions(0), nInstalledVersions(0), nIndexSubjectVer(-1), nIndexOverwrittenVer(-1), nIndexCurrentVer(-1), nIndexNewPrimaryVer(-1), arPathNames(0), arVersionNames(0), arGUID(0) {} ~InstallData() { delete[] arPathNames; delete[] arVersionNames; delete[] arGUID; } bool Init(); static bool CompareVersion(LPCTSTR szPath); static bool GetVersion(const TCHAR* szPath, DWORD *pdwms, DWORD *pdwls); static void ShortenToDirectory(TCHAR* lpszPath); static void OSErrorMsgBox(LPCTSTR szHeader, UINT nMsg, UINT nType); static DWORD GetBufferByteLen(const WTL::CString& str);#if defined(_DEBUG) void Dump();#endif};#endif // if !defined(__INSTALLIMPL_H__)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -