📄 resorgversioncheck.h
字号:
/************************************************************************
*
* Resource ID Organiser Core Library
*
* (c) Copyright 2000-2003 by Anna-Jayne Metcalfe (resorg@annasplace.me.uk)
* All rights reserved.
*
************************************************************************
*
* Filename : ResOrgVersionCheck.h
*
* Compiler : Microsoft Visual C++ 6.0, Service Pack 3 or later
* Microsoft Visual C++ .NET 2002
*
* Target
* Environment : Windows 98/NT/2000/XP
*
* NOTE:
*
* This software is provided "as is" free for personal use. All
* title and copyrights in and to the software, including but not
* limited to any images, text, etc. incorporated into it, are
* owned by Anna-Jayne Metcalfe, except where acknowledged otherwise.
*
* Your may freely to use this code in your own products, PROVIDED
* this notice is not removed or modified.
*
*
* Visit http://www.annasplace.me.uk/resorg for latest updates
*
************************************************************************
*
* MODIFICATION HISTORY:
*
* This is a controlled document. See project configuration
* control tool for latest version and full version history.
*
* $Archive: /Projects/AddIns/ResOrg/ResOrgCore/ResOrgVersionCheck.h $
* $Revision: 9 $
* $Date: 21/06/03 11:31 $
* $Author: Anna $
*
* $History: ResOrgVersionCheck.h $
*
* ***************** Version 9 *****************
* User: Anna Date: 21/06/03 Time: 11:31
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* Replaced CResOrgVersionCheck::IsNewVersion() with
* CResOrgVersionCheck::CompareVersions(). This allows CResOrgOptions to
* also determine if the installed version is *newer* than the current
* release
*
* ***************** Version 8 *****************
* User: Anna Date: 15/04/03 Time: 20:36
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* 1. Removed unnecessary file guards (#pragma once works well enough)
* 2. Updated file banners
*
* ***************** Version 7 *****************
* User: Anna Date: 15/02/03 Time: 20:53
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* Changed big BOOLs into little bools
*
* ***************** Version 6 *****************
* User: Anna Date: 25/11/02 Time: 15:20
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* Changed website address in banner
*
* ***************** Version 5 *****************
* User: Anna Date: 22/10/02 Time: 13:24
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* Changed name/mail address (at last!)
*
* ***************** Version 4 *****************
* User: Andy Date: 7/06/02 Time: 17:04
* Updated in $/Projects/AddIns/ResOrg/ResOrgCore
* Renamed the ResOrgUtils module to ResOrgCore. Updated file banners
* accordingly
*
*
* $Nokeywords: $
*
************************************************************************/
#pragma once
#include <afxmt.h>
/////////////////////////////////////////////////////////////////////////////
// CResOrgVersionCheck class
#define CResOrgVersionCheck_BASE CObject
class RESORGCORE_EXT_CLASS CResOrgVersionCheck : public CObject
{
// Construction
public:
CResOrgVersionCheck(bool bDisableDialupPrompt);
virtual ~CResOrgVersionCheck(void);
// Attributes
protected:
CString m_sURL;
CString m_sTempFileName; // Temporary file
DWORD m_dwContext;
int m_ePriority;
bool m_bDisableDialupPrompt;
DWORD m_dwErrorCode;
HWND m_hwndTarget; // Target window for notification
UINT m_uMsg; // User defined message to post
UINT m_uMsgID; // ID if message is WM_COMMAND
CEvent m_Event; // Event used to signal thread to exit
CWinThread* m_pThread; // Pointer to worker thread monitoring file
HANDLE m_hThread; // Thread handle obtained from m_pThread
static CMapPtrToPtr m_mapMonitors; // Used to call into the right object from
// static callback function
// Virtual Overrides
protected:
// Called when a notification should be made
virtual bool OnDownloadCompleted(void);
// Operations
public:
bool SetNotifyTarget( CWnd* pWnd,
UINT uMsg,
UINT uID = 0);
bool SetPriority(int ePriority);
bool StartDownload( const CString& sURL,
DWORD dwContext = 0);
bool IsDownloading(void) const
{ return (NULL != m_pThread); }
DWORD GetErrorCode(void) const
{ return m_dwErrorCode; }
CString GetURL(void) const
{ return m_sURL; };
CString GetValue( const CString& sSection,
const CString& sEntry,
const CString& sDefault = _T("") ) const;
int CompareVersions( const CString& sSection,
const CString& sExistingVer) const;
bool DownloadTextFile( const CString& sURL,
const CString& sDestination,
DWORD dwContext,
DWORD* pdwError = NULL);
// Implementation
private:
// Create worker thread
bool CreateDownloadThread(void);
// Main function for worker thread. Called when the thread is created
static UINT ThreadFunc(LPVOID pParam);
UINT DoThreadFunc(LPVOID pParam);
};
/////////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -