C++涓瑿reateFile鍑芥暟鎬庝箞浣跨敤
鍦–++涓娇鐢–reateFile鍑芥暟鏉ュ垱寤烘垨鎵撳紑涓€涓枃浠讹紝闇€瑕侀伒寰互涓嬫楠わ細
- 鍖呭惈澶存枃浠讹細
#include <Windows.h>
- 瀹氫箟鏂囦欢鍙ユ焺鍙橀噺锛?/li>
HANDLE hFile;
- 璋冪敤CreateFile鍑芥暟锛?/li>
hFile = CreateFile(
LPCTSTR lpFileName, // 鏂囦欢鍚?/span>
DWORD dwDesiredAccess, // 璁块棶妯″紡
DWORD dwShareMode, // 鍏变韩妯″紡
LPSECURITY_ATTRIBUTES lpSecurityAttributes, // 瀹夊叏灞炴€?/span>
DWORD dwCreationDisposition, // 濡備綍鍒涘缓鏂囦欢
DWORD dwFlagsAndAttributes, // 鏂囦欢灞炴€?/span>
HANDLE hTemplateFile // 妯℃澘鏂囦欢鍙ユ焺
);
鍙傛暟璇存槑锛?/p>
-
lpFileName
锛氳鍒涘缓鎴栨墦寮€鐨勬枃浠跺悕锛屽彲浠ユ槸缁濆璺緞鎴栫浉瀵硅矾寰勩€?/p> -
dwDesiredAccess
锛氳闂ā寮忥紝浣跨敤甯搁噺GENERIC_READ
琛ㄧず璇诲彇锛?code>GENERIC_WRITE琛ㄧず鍐欏叆锛屼篃鍙互浣跨敤鍏朵粬甯搁噺缁勫悎銆?/p> -
dwShareMode
锛氬叡浜ā寮忥紝浣跨敤甯搁噺FILE_SHARE_READ
琛ㄧず鍙锛?code>FILE_SHARE_WRITE琛ㄧず鍙啓锛屼篃鍙互浣跨敤鍏朵粬甯搁噺缁勫悎銆?/p> -
lpSecurityAttributes
锛氬畨鍏ㄥ睘鎬э紝涓€鑸缃负NULL銆?/p> -
dwCreationDisposition
锛氬浣曞垱寤烘枃浠讹紝浣跨敤甯搁噺CREATE_ALWAYS
琛ㄧず鎬绘槸鍒涘缓鏂版枃浠讹紝OPEN_ALWAYS
琛ㄧず濡傛灉鏂囦欢涓嶅瓨鍦ㄥ氨鍒涘缓涓€涓柊鏂囦欢锛屽鏋滄枃浠跺瓨鍦ㄥ垯鎵撳紑瀹冦€?/p> -
dwFlagsAndAttributes
锛氭枃浠跺睘鎬э紝鍙互浣跨敤甯搁噺FILE_ATTRIBUTE_NORMAL
琛ㄧず鏅€氭枃浠讹紝涔熷彲浠ヤ娇鐢ㄥ叾浠栧父閲忕粍鍚堛€?/p> -
hTemplateFile
锛氭ā鏉挎枃浠跺彞鏌勶紝涓€鑸缃负NULL銆?/p>
- 妫€鏌ユ枃浠跺彞鏌勬槸鍚︽湁鏁堬細
if (hFile == INVALID_HANDLE_VALUE) {
// 鏂囦欢鍙ユ焺鏃犳晥锛屽垱寤烘垨鎵撳紑鏂囦欢澶辫触
DWORD dwError = GetLastError();
// 澶勭悊閿欒
} else {
// 鏂囦欢鍙ユ焺鏈夋晥锛屽垱寤烘垨鎵撳紑鏂囦欢鎴愬姛
// 鍦ㄨ繖閲屽彲浠ョ户缁鏂囦欢杩涜璇诲啓鎿嶄綔
}
娉ㄦ剰浜嬮」锛?/p>
-
鍦ㄤ娇鐢ㄥ畬鏂囦欢鍚庯紝闇€瑕佷娇鐢?code>CloseHandle鍑芥暟鍏抽棴鏂囦欢鍙ユ焺锛屼互閲婃斁绯荤粺璧勬簮銆?/p>
-
浣跨敤
WriteFile
鍑芥暟鍙互鍚戞枃浠朵腑鍐欏叆鏁版嵁锛屼娇鐢?code>ReadFile鍑芥暟鍙互浠庢枃浠朵腑璇诲彇鏁版嵁銆?/p>
相关问答