⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resorgversioncheck.h

📁 ResOrg 图形化管理Vc项目的资源ID的工具的源代码。 ResOrg - Manage and Renumber Resource Symbol IDs Introduction The
💻 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 + -