createfile 예제

팁: 이전 WriteFile 예제에서 만든 파일을 사용하여 이 예제를 테스트할 수 있습니다. Windows NT: CreateFile의 와이드(W) 버전을 호출하고 경로에 “\”를 미리 보류하여 MAX_PATH 문자보다 긴 경로를 사용할 수 있습니다. “\”는 함수에 경로 구문 분석 해제를 알려줍니다. 이렇게 하면 거의 32,000개의 유니코드 문자 길이의 경로를 사용할 수 있습니다. 그러나 경로의 각 구성 요소는 MAX_PATH 문자보다 길수 없습니다. 이 기술을 사용하여 정규화된 경로를 사용해야 합니다. 이는 UNC 이름과도 함께 작동합니다. “\”는 경로의 일부로 무시됩니다. 예를 들어 “\C:myworldprivate”은 “C:myworldprivate”으로 보이며 “\\unctom_1hotstuffcoolapps”는 “\tom_1hotstuffcoolapps”로 볼 수 있습니다. […] 만들기 파일을 여는 방법 (파일 만들기 예제) […] 다음 예제에서는 CreateFile을 사용하여 새 파일을 만들고 작성하기 위해 파일을 열고 WriteFile을 열어 파일에 동기적으로 간단한 문자열을 작성합니다. 위에서 설명한 것처럼 dwDesiredAccess에 대해 0을 지정하면 응용 프로그램이 실제로 장치에 액세스하지 않고 장치 특성을 쿼리할 수 있습니다.

예를 들어 응용 프로그램이 플로피 디스크 드라이브의 크기와 드라이브에 플로피없이 지원하는 형식을 확인하려는 경우 이러한 유형의 쿼리가 유용합니다. FILE_FLAG_OverLAPPED 그러나 한 번에 장치에 보류 중인 여러 읽기/쓰기가 허용됩니다. CreateFile 함수는 콘솔 입력에 대한 핸들을 만들 수 있습니다(CONIN$). 프로세스에 상속 또는 중복의 결과로 열린 핸들이 있는 경우 활성 화면 버퍼(CONOUT$)에 대한 핸들을 만들 수도 있습니다. 호출 프로세스는 상속된 콘솔에 연결되거나 AllocConsole 함수에 의해 할당된 프로세스여야 합니다. 콘솔 핸들의 경우 CreateFile 매개 변수를 다음과 같이 설정합니다. 개체를 공유하려면 다음 값 중 하나 이상을 조합하여 사용하십시오: FILE_FLAG_NO_BUFFERING으로 열린 파일로 작업할 때 응용 프로그램이 특정 요구 사항을 충족해야 합니다: dwFlagsAndAttributes 매개 변수는 SECURITY_SQOS_ PRESENT 플래그 또는 해당 값입니다. . Windows CE: Windows CE는 특수 장치 파일 이름을 사용하여 주변 장치에 액세스합니다. 이러한 이름의 형식에 대한 자세한 내용은 Windows CE 장치 드라이버 키트 설명서를 참조하십시오. 이 경우 CreateFile은 지정된 파일이 현재 디렉터리에 이미 있는 경우에만 성공합니다. 호출이 동일한 액세스 및 공유 모드를 사용하는 경우 CreateFile을 사용하여 이 파일을 여는 후속 호출이 성공합니다.

CreateFile 메일 슬롯의 클라이언트 끝을 열면 메일 슬롯 클라이언트가 CreateMailSlot 함수를 사용하여 로컬 메일 슬롯을 열려고 시도하는 경우 함수는 INVALID_HANDLE_VALUE를 반환합니다.

Posted in Uncategorized