CloseHandle

CloseHandle

CloseHandle包括文件、文件映射、進程、線程、安全和同步對象等。涉及文件處理時,這個函數通常與vb的close命令相似。應儘可能的使用close,因為它支持vb的差錯控制。

函數介紹


方法名稱:CloseHandle
位置:Kernel32.dll
BOOL CloseHandle(
HANDLE hObject
);
參數
hObject :代表一個已打開對象handle。
TRUE:執行成功;
FALSE:執行失敗,可以調用GetLastError()獲知失敗原因。

函數說明


關閉一個內核對象。其中包括文件、文件映射、進程、線程、安全和同步對象等。在CreateThread成功之後會返回一個hThread的handle,且內核對象的計數加1,CloseHandle之後,引用計數減1,當變為0時,系統刪除內核對象。
若在線程執行完之後,沒有調用CloseHandle,在進程執行期間,將會造成內核對象的泄露,相當於句柄泄露,但不同於內存泄露,這勢必會對系統的效率帶來一定程度上的負面影響。但當進程結束退出后,系統會自動清理這些資源。

相關問題


返回值

Long,非零表示成功,零表示失敗。會設置GetLastError

參數表

參數 類型及說明
hObject Long,欲關閉的一個對象的句柄

註解

除非對內核對象的所有引用都已關閉,否則該對象不會實際刪除

示例


從一個文件中讀取DDB數據然後用進行轉換