插件编写傻瓜教程VC6.0
生活随笔
收集整理的這篇文章主要介紹了
插件编写傻瓜教程VC6.0
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
| >>寫在前面 本教程主要講解如何用按鍵精靈自帶的模版編寫插件. 請大家在教程沒全部寫完之前不要跟貼,謝謝合作! 需要的工具:VC6.0 編輯語言:C++ >>初步接觸 1.安裝VC6.0(建議不要使用創(chuàng)天的漢化版) 2.解壓插件自帶的模版,解壓后選擇QMPlugin.dsw文件,打開工程.進入VC編輯界面. 3.選擇FileViewx選項卡,再選擇QMPlugin.cpp.(參照map1圖中紅圈位置) 此時,編輯區(qū)域顯示的是QMPlugin.cpp文件的內容. 4.請看下面的組圖中的紅圈部分 紅圈1-4的內容都是QMPlugin.cpp的內容 紅圈1: 定義頭文件部分 在此打個簡單的比喻!我們把插件看做一個機器裝配工廠,插件中需要調用的函數看做是裝配零件. 插件這個工廠要裝配不同的機器必須用到不同的裝配零件.為了方便工作,我們人為地把汽車零件放在一個倉庫, 把輪船零件放在一個倉庫.類推.在這里,定義頭文件就相當于在組裝一臺機器前告訴工廠, 我們組裝這臺機器需要去哪些倉庫拿零件.下面程序中用到的函數必須在頭文件指示的倉庫里. 這里還要提一下,倉庫可以存在包含關系,比如A倉庫可以包含B.C2個小倉庫, 如果我們要取B倉庫中的零件,只要指明A倉庫或者B倉庫任意一個就可以了. 詳細的頭文件包含關系可以參閱MSDN(當然自己也可以定義頭文件,本文主要是寫給一些初學者,在此略過) 紅圈2: 編輯按鍵精靈腳本時顯示的本插件的名稱注釋 修改這里的字符串可以改變本插件顯示的名稱 紅圈3: 定義功能的函數 紅圈部分是一個函數,一個函數對應著一條插件命令. int Test1Handler(char *lpszParamList, char *lpszRetVal) int表示函數的返回值是一個整型 Test1Handler是本函數的名稱 (char *lpszParamList, char *lpszRetVal)是函數的2個參數 char表示這2個參數都是字符型,*是指針運算符,char *說明這2個參數是字符型指針 在C/C++中可以把字符型指針看做是字符型數組,簡單的也可以理解成字符串. lpszParamList是命令需要的參數,lpszRetVal是返回值參數 char lpszParam1[1024] = {0}, lpszParam2[1024] = {0};? ParseParam(lpszParamList,lpszParam1,lpszParam2); 如果該函數對應的插件命令參數大于1個,我們則需要這2句 這2句是把命令需要的參數分解,我們在使用插件的時候寫進的命令參數是XXX,XXXX,XXXX的形式的. XXX,XXXX,XXXX被看做是一個參數傳遞給插件中的函數.因此我們需要ParseParam函數來分解, 分解的過程是以逗號為分割線,去掉逗號,把一個參數分成幾個參數的過程. 上面例子2句是分解成2個參數lpszParam1,lpszParam2.分解后的參數仍是字符串型. (提一下ParseParam函數是在ExtFunc.cpp中被定義的) char lpszShowMessage[4096]; sprintf(lpszShowMessage,"Param1 = %s\nParam2 = %s",lpszParam1,lpszParam2); MessageBox(0,lpszShowMessage,"This is plugin command Test1",0); 這3句是函數過程,這里的sprintf函數就是被定義在"stdio.h"中的 return 1; C/C++語言的函數除了函數是void型外都必須有返回值, 如果你的函數不需要返回值,也要寫return這句,至于返回什么可以任意. 上面定義了函數返回類型是int,這里只要寫任意一個整數就可以了. 紅圈4: 本插件在編輯按鍵精靈腳本時的命令,以及注釋部分 "Test1","測試1",Test1Handler, "Test2","測試2",Test2Handler, 知道這是一個結構體就可以了.這個結構體有3個部分,每個部分的逗號都不可以省略. 3個逗號以及這3個逗號之前的字符表示一條插件命令,6.1的則是4個逗號 "Test1"是完成后插件的命令名,與Test1Handler對應 "測試1"是注釋內容,Test1Handler是上面定義的函數,與"Test1"對應 如果這里你不想寫注釋可以這樣寫"Test1",,Test1Handler, 注:6.0和6.1的模版不同之處,6.1此處多了1個部分,表示該命令有幾個命令參數 "Test1","測試1",Test1Handler,2, 現在接觸電腦時間越來越少,估計這篇教程要慢慢完成了.預計2.3天才能完成一節(jié). 還有對一些論壇短消息沒有回復,敬請大家諒解. 下個章節(jié)會講一些C++函數類型轉換的相關知識. [?本帖最后由 沉8 于 2007-3-16 12:22 PM 編輯?] |
1.jpg?(162.66 KB)
?
map1
2.jpg?(165.33 KB)
?
map2
3.jpg?(153.51 KB)
?
map3
轉載于:https://www.cnblogs.com/rogee/archive/2010/11/30/1892448.html
總結
以上是生活随笔為你收集整理的插件编写傻瓜教程VC6.0的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Call Exec in PeopleC
- 下一篇: 极致的线上产品设计与终极数据分析工具,两