好長一段時間沒寫文章了,最近一直忙於為專案的可調式性做一些指令碼和擴充套件工具,鑑於對windbg強大威力的震撼,以及相對較少的資料,筆者決定寫一系列關於如何開發windbg指令碼和擴充套件命令的文章,您的支援是我最大的動力,希望本系列文章對您有所幫助。
那麼乙個完整的windbg script是什麼樣子的呢?首先讓我們看如下示例:
$$ 該指令碼是列出使用者程序和棧
r $t0 = nt!psactiveprocesshead
.for (r $t1 = poi(@$t0); (@$t1 != 0) & (@$t1 != @$t0); r $t1 = poi(@$t1))
相對於windbg指令碼,windbg擴充套件比較複雜,而且通常需要花費更大的精力寫出同樣的功能,但是它帶來的乙個好處就是你可以獲得更多的功能,你甚至可以通過這些擴充套件寫乙個偵錯程式,那麼乙個完整的windbg擴充套件又是什麼樣子的呢?該擴充套件dll列印出乙個全域性字串的值。
以c++語言編寫的windbg擴充套件示例:
hresult callback
printptr(pdebug_client pdebugclient, pcstr args)
}
pdebugdataspaces->release();
}pdebugsymbols->release();}}
return s_ok;
}
總結
基於筆者的研究發現,國內做相關研究的人並不多,其實國外也就幾個業內比較牛的人做的相對比較好,但是這些工具的作用足以讓你震撼,今天開個頭,有興趣的朋友可以繼續關注後續文章。
Windbg指令碼和擴充套件工具開篇
好長一段時間沒寫文章了,最近一直忙於為專案的可調式性做一些指令碼和擴充套件工具,鑑於對windbg強大威力的震撼,以及相對較少的資料,筆者決定寫一系列關於如何開發windbg指令碼和擴充套件命令的文章,您的支援是我最大的動力,希望本系列文章對您有所幫助。那麼乙個完整的windbg script是什麼...
Windbg指令碼和擴充套件工具開篇
好長一段時間沒寫文章了,最近一直忙於為專案的可調式性做一些指令碼和擴充套件工具,鑑於對windbg強大威力的震撼,以及相對較少的資料,筆者決定寫一系列關於如何開發windbg指令碼和擴充套件命令的文章,您的支援是我最大的動力,希望本系列文章對您有所幫助。那麼乙個完整的windbg script是什麼...
SQL Server可寫指令碼和程式設計擴充套件SSIS包
微軟的sql server 2005中用來替代資料傳輸服務 dts 的sql server綜合服務 ssis 包含了很多任務具用於匯入資料並將其轉換為有意義的資訊,而不僅僅是被動的匯入。但是還有一點要注意的是,你會發現這個新的ssis工具有時候並不能完全覆蓋你要做的所有事情。因此,微軟提供了兩種基本...