亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? plugin_one.cpp

?? 主要功能的記不清楚了
?? CPP
字號:
// PlugIn_one.cpp : Defines the initialization routines for the DLL.
//


#include "stdafx.h"
#include "PlugIn_one.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

//
//	Note!
//
//		If this DLL is dynamically linked against the MFC
//		DLLs, any functions exported from this DLL which
//		call into MFC must have the AFX_MANAGE_STATE macro
//		added at the very beginning of the function.
//
//		For example:
//
//		extern "C" BOOL PASCAL EXPORT ExportedFunction()
//		{
//			AFX_MANAGE_STATE(AfxGetStaticModuleState());
//			// normal function body here
//		}
//
//		It is very important that this macro appear in each
//		function, prior to any calls into MFC.  This means that
//		it must appear as the first statement within the 
//		function, even before any object variable declarations
//		as their constructors may generate calls into the MFC
//		DLL.
//
//		Please see MFC Technical Notes 33 and 58 for additional
//		details.
//

/////////////////////////////////////////////////////////////////////////////
// CPlugIn_oneApp
//定義按鈕標識
#define  ID_BUTTON_PLUGIN_CALC 12001
//定義插件名稱
const TCHAR szPlugName[] = _T("計算器");

#define PLUG_EXPORT __declspec(dllexport)
//初始化插件,這里主要設置主程序ToolBar指針
extern "C" PLUG_EXPORT UINT InitPlugIn(CToolBar *pWndToolbar);
//釋放插件,主要是刪除掉ToolBar上的按鈕
extern "C" PLUG_EXPORT void DestroyPlugIn();
//當點擊ToolBar上的按鈕事件
extern "C" PLUG_EXPORT void HandleOnClick(); 
//得到插件圖標和插件標題
extern "C" PLUG_EXPORT void GetPlugInResources(HICON *hIcon, CString *szLabel);
//得到插件名
extern "C" PLUG_EXPORT void GetPlugInName(CString *szPlugInName);


BEGIN_MESSAGE_MAP(CPlugIn_oneApp, CWinApp)
	//{{AFX_MSG_MAP(CPlugIn_oneApp)
		// 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()

/////////////////////////////////////////////////////////////////////////////
// The one and only CPlugIn_oneApp object

CPlugIn_oneApp theApp;
/*
*函數介紹:初始化插件,這里主要設置主程序ToolBar指針
*入口參數:pWndToolBar : 指向主程序的ToolBar指針
*出口參數:無
*返回值:  無
*/
PLUG_EXPORT UINT InitPlugIn(CToolBar *pWndToolBar)
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());
	theApp.SetToolBarPointer(pWndToolBar);
	theApp.AddButtonToToolBar();

	return ID_BUTTON_PLUGIN_CALC;
}

/*
*函數介紹:釋放插件,主要是刪除掉ToolBar上的按鈕
*入口參數:無
*出口參數:無
*返回值:  無
*/
PLUG_EXPORT void DestroyPlugIn()
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());
	theApp.RemoveButtonFromToolBar();
}


/*
*函數介紹:當點擊ToolBar上的按鈕事件
*入口參數:無
*出口參數:無
*返回值:  無
*/
PLUG_EXPORT void HandleOnClick()
{
   AFX_MANAGE_STATE(AfxGetStaticModuleState());
    if (!theApp.WinExec(_T("calc")))
	{
		AfxMessageBox(_T("計算器程序未被執行"));
	}
}

/*
*函數介紹:得到插件圖標和插件標題
*入口參數:無
*出口參數:hIcon : 插件圖標句柄
           szLabel : 插件標題
*返回值:  無
*/
PLUG_EXPORT void GetPlugInResources(HICON *hIcon, CString *szLabel)
{
	hIcon = theApp.GetPlugInIcon();
	*szLabel = _T("計算器插件");
}

/*
*函數介紹:得到插件名
*入口參數:無
*出口參數:szPlugInName : 插件名
*返回值:  無
*/
PLUG_EXPORT void GetPlugInName(CString *szPlugInName)
{
	*szPlugInName = szPlugName;
}

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



/*
*函數介紹:用于設置主窗體工具欄指針
*入口參數:pWndToolBar : 指向主程序的ToolBar指針
*出口參數:無
*返回值:  無
*/
void CPlugIn_oneApp::SetToolBarPointer(CToolBar *pwndToolBar)
{
	m_pwndToolBar = pwndToolBar;
}

/*
*函數介紹:用于添加按鈕到主窗體工具欄上
*入口參數:無
*出口參數:無
*返回值:  無
*/
void CPlugIn_oneApp::AddButtonToToolBar()
{

	CToolBarCtrl& pToolbarCtrl = m_pwndToolBar->GetToolBarCtrl();

	//得到工具欄已有的按鈕數
	int nButCount = pToolbarCtrl.GetButtonCount();

	//將插件按鈕位圖添加到工具欄上
	int nImageCount = pToolbarCtrl.AddBitmap(1, IDB_PLUGIN_CALC);

	//定義一個新按鈕
	TBBUTTON tb;
	//設置按鈕按鈕圖片
	tb.iBitmap = nImageCount;
	//設置按鈕標識
	tb.idCommand = ID_BUTTON_PLUGIN_CALC;
	//設置按鈕狀態
	tb.fsState = TBSTATE_ENABLED;
	//設置按鈕演示
	tb.fsStyle = TBSTYLE_BUTTON;
	tb.dwData = 0;
	tb.iString = NULL;

	//將按鈕添加到工具欄上
	pToolbarCtrl.InsertButton(nImageCount, &tb);
}

/*
*函數介紹:用于從主窗體上刪除掉添加的按鈕
*入口參數:無
*出口參數:無
*返回值:  無
*/
void CPlugIn_oneApp::RemoveButtonFromToolBar()
{
	if (m_pwndToolBar != NULL)
	{
		CToolBarCtrl& pToolbarCtrl = m_pwndToolBar->GetToolBarCtrl();
		
		TBBUTTON tbButton;
		
		int nButtonCount = pToolbarCtrl.GetButtonCount();
		for (int i=0; i<nButtonCount; ++i)
		{
			pToolbarCtrl.GetButton(i, &tbButton);
			//當按鈕是本插件按鈕時,則刪除之。
			if (tbButton.idCommand == ID_BUTTON_PLUGIN_CALC)
			{
				pToolbarCtrl.DeleteButton(i);
				break;
			}
		}
	}
}

/*
*函數介紹:用于得到插件按鈕的標識
*入口參數:無
*出口參數:無
*返回值:  插件按鈕標識
*/
UINT CPlugIn_oneApp::GetToolBarButtonInfo(void)
{
	return ID_BUTTON_PLUGIN_CALC;
}

/*
*函數介紹:用于得到插件的圖標
*入口參數:pWndToolBar : 指向主程序的ToolBar指針
*出口參數:無
*返回值:  圖標句柄
*/
HICON *CPlugIn_oneApp::GetPlugInIcon(void)
{
	return (HICON *)LoadIcon(IDI_PLUGIN_CALC);
}
/*
*函數介紹:用于執行外部程序
*入口參數:FileName : 表示可執行文件名
*出口參數:無
*返回值:  TRUE:執行成功,FALSE:執行失敗
*/
bool CPlugIn_oneApp::WinExec(LPCTSTR FileName)
{
    PROCESS_INFORMATION processInfo; //進程相關信息
    if (!CreateProcess(FileName, NULL, NULL, NULL, NULL
      , CREATE_NEW_CONSOLE
      , NULL, NULL, NULL, &processInfo))
    {
		return false;
	}
    CloseHandle(processInfo.hThread);
	CloseHandle(processInfo.hProcess);
	return true ;
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人一级黄色片| 国产欧美久久久精品影院| 日韩视频一区在线观看| 久久久青草青青国产亚洲免观| 国产精品丝袜黑色高跟| 性久久久久久久久| 国产一区久久久| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 91一区二区在线| 在线播放视频一区| 国产精品久久久久影院| 丝袜a∨在线一区二区三区不卡| 国内精品自线一区二区三区视频| 91污片在线观看| 欧美刺激脚交jootjob| 亚洲婷婷综合色高清在线| 日本不卡免费在线视频| av在线不卡电影| 欧美tk丨vk视频| 亚洲午夜羞羞片| 国产成人精品免费在线| 欧美日韩午夜在线| 国产精品福利一区| 青青草一区二区三区| 成人一区二区三区在线观看| 6080午夜不卡| 一区二区三区视频在线观看| 国产精品一线二线三线精华| 欧美日韩精品一区二区| 最新国产成人在线观看| 国产一区二区三区久久悠悠色av | 亚洲综合视频在线观看| 国产乱妇无码大片在线观看| 色偷偷成人一区二区三区91| 久久亚洲一区二区三区明星换脸| 亚洲国产精品麻豆| 99久久伊人精品| 久久亚洲精精品中文字幕早川悠里| 天天综合色天天| 色诱亚洲精品久久久久久| 国产亚洲一区字幕| 麻豆高清免费国产一区| 欧洲精品在线观看| 亚洲欧美日韩在线| 成人国产亚洲欧美成人综合网| 精品国产乱码久久久久久老虎| 首页国产欧美日韩丝袜| 欧美伊人精品成人久久综合97| 国产精品福利一区| 大尺度一区二区| 久久久另类综合| 国精产品一区一区三区mba视频 | 精品一区二区免费看| 3d成人动漫网站| 五月天欧美精品| 欧美欧美欧美欧美首页| 一区二区三区精品视频| 色综合中文综合网| 国产精品伦理一区二区| 国产不卡视频一区| 国产亚洲精品精华液| 国产一区二区三区av电影| 精品国产精品一区二区夜夜嗨| 奇米精品一区二区三区在线观看| 欧美三级在线播放| 亚洲一区二区在线免费观看视频 | 亚洲二区视频在线| 欧美日韩亚洲不卡| 首页综合国产亚洲丝袜| 欧美一区二区三区在线视频| 日韩高清一区二区| 日韩一区二区三区视频在线| 日本va欧美va瓶| 日韩一区二区在线看片| 久久精品久久99精品久久| 日韩欧美三级在线| 国产一区二区精品久久| 久久久国产午夜精品| 国产精一品亚洲二区在线视频| 2017欧美狠狠色| 成人免费黄色大片| 亚洲婷婷国产精品电影人久久| 99久久国产综合精品色伊| 又紧又大又爽精品一区二区| 在线观看日产精品| 亚洲第一激情av| 日韩精品专区在线| 国产成人夜色高潮福利影视| 亚洲国产精品成人综合色在线婷婷 | 欧美日韩日日夜夜| 美女视频一区二区三区| 久久久久久久综合日本| 成人一区二区视频| 一区二区三区高清不卡| 欧美一区二区精品在线| 国产酒店精品激情| 亚洲色图在线看| 3751色影院一区二区三区| 精品系列免费在线观看| 日韩一区二区免费在线观看| 精品动漫一区二区三区在线观看 | 国产欧美日韩在线视频| 色婷婷av一区二区三区大白胸| 午夜精品久久久久久久99水蜜桃| 日韩欧美一区二区在线视频| 国产剧情一区在线| 一区二区三区国产| 欧美v国产在线一区二区三区| 国产ts人妖一区二区| 一区二区三区欧美视频| 精品少妇一区二区三区在线播放| 成人av资源在线观看| 午夜精品在线看| 国产精品视频在线看| 欧美日韩亚洲综合一区二区三区| 国产在线不卡一卡二卡三卡四卡| 亚洲免费观看在线观看| 日韩一区二区在线观看| av毛片久久久久**hd| 日本强好片久久久久久aaa| 国产精品视频线看| 欧美一区二区播放| 99精品桃花视频在线观看| 日韩成人一级大片| 综合久久国产九一剧情麻豆| 欧美v国产在线一区二区三区| 一本在线高清不卡dvd| 国产一区日韩二区欧美三区| 亚洲妇熟xx妇色黄| 国产精品色一区二区三区| 91麻豆精品国产自产在线| 不卡在线观看av| 精品一区二区国语对白| 亚洲成av人片观看| 国产精品卡一卡二卡三| 日韩欧美成人一区二区| 在线观看日韩国产| 成人av一区二区三区| 久久国产婷婷国产香蕉| 亚洲国产精品久久人人爱蜜臀| 国产精品天天看| 久久午夜免费电影| 欧美久久一区二区| 97精品视频在线观看自产线路二| 激情丁香综合五月| 日本大胆欧美人术艺术动态| 亚洲欧美日本韩国| 欧美激情一区二区在线| 精品成人一区二区三区四区| 欧美日韩一区小说| 色又黄又爽网站www久久| 成人小视频在线| 国产精品一区二区黑丝| 麻豆精品一二三| 日韩国产欧美视频| 亚洲成人激情av| 亚洲精品videosex极品| 自拍偷拍国产精品| 中文av一区二区| 国产人妖乱国产精品人妖| 久久综合狠狠综合久久综合88| 日韩西西人体444www| 欧美日韩国产美女| 91久久奴性调教| 91麻豆视频网站| 成a人片国产精品| 成年人国产精品| 大白屁股一区二区视频| 国产福利视频一区二区三区| 久久国产生活片100| 另类欧美日韩国产在线| 美女网站视频久久| 麻豆传媒一区二区三区| 久久国产精品区| 激情文学综合丁香| 国产伦精品一区二区三区免费迷 | 国内精品久久久久影院薰衣草| 午夜精品久久久久久久久久久| 一区二区国产盗摄色噜噜| 亚洲免费视频成人| 夜夜嗨av一区二区三区四季av| 亚洲欧美另类小说| 亚洲欧美福利一区二区| 亚洲精品videosex极品| 亚洲男人的天堂av| 亚洲一区二区三区四区在线免费观看| 日韩美女久久久| 一区二区三区高清在线| 午夜私人影院久久久久| 午夜精品福利一区二区蜜股av | 91精品国产综合久久福利软件| 在线播放91灌醉迷j高跟美女| 欧美军同video69gay| 91精品福利在线一区二区三区| 欧美一级二级三级乱码| 久久久精品黄色| 18成人在线视频| 亚洲综合一区在线| 免费在线观看一区| 国产成人午夜精品影院观看视频|