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

📄 hooksrv.cpp

📁 这是一本学习 window编程的很好的参考教材
💻 CPP
字号:
//---------------------------------------------------------------------------
//
// HookSrv.cpp
//
// SUBSYSTEM:   Hook system
//				
// MODULE:      Hook server
//				
// DESCRIPTION: Defines the class behaviors for the application.
//             
// AUTHOR:		Ivo Ivanov (ivopi@hotmail.com)
// DATE:		2001 December v1.00
//
//---------------------------------------------------------------------------
#include "stdafx.h"
#include "HookSrv.h"
#include "MainFrm.h"
#include "LimitSingleInstance.h"

//---------------------------------------------------------------------------
//
// class CHookSrvApp
//
//---------------------------------------------------------------------------
BEGIN_MESSAGE_MAP(CHookSrvApp, CWinApp)
	//{{AFX_MSG_MAP(CHookSrvApp)
	ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
		// NOTE - the ClassWizard will add and remove mapping macros here.
		//    DO NOT EDIT what you see in these blocks of generated code!
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

//---------------------------------------------------------------------------
//
// CHookSrvApp construction
//
//---------------------------------------------------------------------------

CHookSrvApp::CHookSrvApp()
{
	// TODO: add construction code here,
	// Place all significant initialization in InitInstance
}

//---------------------------------------------------------------------------
//
// Singletons
//
//---------------------------------------------------------------------------
// Application object
CHookSrvApp theApp;
// The one and only CLimitSingleInstance object
CLimitSingleInstance g_SingleInstanceObj("{05CA3573-B449-4e0b-83F5-7FD612E378E9}");


//---------------------------------------------------------------------------
//
// CHookSrvApp initialization
//
//---------------------------------------------------------------------------

BOOL CHookSrvApp::InitInstance()
{
	BOOL bIsAnotherInstanceRunning = 
		g_SingleInstanceObj.IsAnotherInstanceRunning();

	if (!bIsAnotherInstanceRunning)
	{
		#ifdef _AFXDLL
			Enable3dControls();			// Call this when using MFC in a shared DLL
		#else
			Enable3dControlsStatic();	// Call this when linking to MFC statically
		#endif
		// To create the main window, this code creates a new frame window
		// object and then sets it as the application's main window object.
		CMainFrame* pFrame = new CMainFrame;
		m_pMainWnd = pFrame;
		// create and load the frame with its resources
		pFrame->LoadFrame(
			IDR_MAINFRAME,
			WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, 
			NULL,
			NULL
			);

		// The one and only window has been initialized, so show and update it.
		pFrame->ShowWindow(SW_HIDE);
		pFrame->UpdateWindow();
	} // if

	return (!bIsAnotherInstanceRunning);
}

//---------------------------------------------------------------------------
//
// class CAboutDlg dialog used for App About
//
//---------------------------------------------------------------------------
class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
		// No message handlers
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//---------------------------------------------------------------------------
//
// CAboutDlg constructor 
//
//---------------------------------------------------------------------------
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

//---------------------------------------------------------------------------
//
// DoDataExchange
//
//---------------------------------------------------------------------------
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

//---------------------------------------------------------------------------
//
// the message map
//
//---------------------------------------------------------------------------
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

//---------------------------------------------------------------------------
// OnAppAbout
//
// App command to run the dialog
//---------------------------------------------------------------------------
void CHookSrvApp::OnAppAbout()
{
	CAboutDlg aboutDlg;
	aboutDlg.DoModal();
}
//----------------------------End of the file -------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -