利用GIT的HOOK機制,為程式自動生成版本資訊

2021-08-27 06:35:03 字數 614 閱讀 7830

利用git的hook機制,為程式自動生成版本資訊

1.git init. 建立git倉庫,可以發現.git/hooks目錄下有一堆*.sample

2.找到post-commit.sample,post-commit表示提交**後觸發的命令,把字尾去掉

3.在檔案最後加入命令,用於在提交之後自動生成包括hash值的標頭檔案:

exec git log --pretty=format:'static tchar* ghash=_t("%h");' -n 1 >./.git/latesthash.h
4.源**中加入git生成的標頭檔案,就可以使用最新的hash值了。下面**使用hash跟蹤軟體版本:

#include "../.git/latesthash.h"

bool cmfcdemodlg::oninitdialog()

{ this->setdlgitemtext(idc_edit_hash, ghash);

5.提交**,觸發.git/hooks/post-commit中命令的執行,自動生成標頭檔案。

6.重新編譯工程,hash值即生效。

利用hook遮蔽程式中的按鍵

using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using system.window...

鉤子 HOOK 機制的使用

wh mouse,gethookinfo,hinstance,getcurrentthreadid mymousehook.callbackfun callbackf mymousehook.isrun not mymousehook.isrun end end procedure uninstal...

鉤子 HOOK 機制的使用

wh mouse,gethookinfo,hinstance,getcurrentthreadid mymousehook.callbackfun callbackf mymousehook.isrun not mymousehook.isrun end end procedure uninstal...