Windows I/O編程注意事項!!!(CreateFile或CreateFile打開後一定要調用CloseHandle(HANDLE)關閉)

調用Windows I/O讀寫文件和設備時,一定要記得關閉句柄,最好在return前面CloseHandle(HANDLE),任何有提前返回的分支也要CloseHandle(HANDLE),否則再次調用會打開句柄失敗,這是博主血淚教訓。博主用qt寫Windows I/O編程,一直髮現第一次調用了一個對話框後,再次調用讀寫硬盤扇區函數時一直失敗,打不開任何硬盤設備的句柄。博主最開始還以爲是非模態對話框的問題,找了一天的問題,終於找到了根源,原來是我調用的這個非模態對話框調用了好幾次Windows I/O函數,但是有一個函數沒有正常關閉句柄,但是卻不提示錯誤。這才導致調用這個非模態對話框後,一直調用不了讀寫扇區函數,導致讀寫磁盤扇區失敗。

血淚教訓,特寫篇博客警惕自己!!!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章