다음을 통해 공유


파일 시스템 함수에 대한 바로 가기 링크 효과

경로 이름을 사용하여 하나 이상의 파일을 지정하는 여러 표준 파일 함수는 바로 가기 링크 사용의 영향을 받습니다. 이 항목에서는 이러한 함수를 나열하고 동작의 변경 내용을 설명합니다.

아래 설명에서는 다음 용어가 사용됩니다.

  • 원본 파일 - 복사할 원본 파일입니다.
  • 대상 파일 - 파일의 새로 만든 복사본입니다.
  • 대상 - 바로 가기 링크가 가리키는 엔터티입니다.

참고

GetFileTime 함수와 같이 CreateFile 함수를 사용하여 만든 핸들을 수락하는 함수의 동작은 CreateFile 함수가 FILE_FLAG_OPEN_REPARSE_POINT 플래그를 사용하여 호출되었는지 여부에 따라 달라집니다. 자세한 내용은 CreateFile 및 다음 CreateFile 및 CreateFileTransacted 섹션을 참조하세요.

 

CopyFile 및 CopyFileTransacted

원본 파일이 바로 가기 링크인 경우 복사된 실제 파일은 바로 가기 링크의 대상입니다.

대상 파일이 이미 있고 기호 링크인 경우 기호 링크의 대상은 원본 파일에서 덮어씁니다.

CopyFileEx

COPY_FILE_COPY_SYMLINK가 지정되고

  • 원본 파일이 바로 가기 링크인 경우 대상 파일이 아닌 바로 가기 링크가 복사됩니다.
  • 원본 파일이 바로 가기 링크가 아니면 동작이 변경되지 않습니다.
  • 대상 파일이 기존 바로 가기 링크인 경우 대상 파일이 아닌 바로 가기 링크가 덮어써집니다.
  • COPY_FILE_FAIL_IF_EXISTS도 지정되고 대상 파일이 기존 바로 가기 링크인 경우 모든 경우에 작업이 실패합니다.

COPY_FILE_COPY_SYMLINK가 지정되지 않았고

  • COPY_FILE_FAIL_IF_EXISTS도 지정되었으며 대상 파일이 기존 바로 가기 링크인 경우 바로 가기 링크의 대상이 존재하는 경우에만 작업이 실패합니다.
  • COPY_FILE_FAIL_IF_EXISTS가 지정되지 않은 경우 동작이 변경되지 않습니다.

Windows Server 2003 및 Windows XP:COPY_FILE_COPY_SYMLINK 플래그는 지원되지 않습니다. 원본 파일이 바로 가기 링크인 경우 복사된 실제 파일은 바로 가기 링크의 대상입니다.

CreateFile 및 CreateFileTransacted

이 함수의 호출로 인해 새 파일이 만들어지면 동작이 변경되지 않습니다.

FILE_FLAG_OPEN_REPARSE_POINT가 지정되었고

  • 기존 파일이 열렸으며 바로 가기 링크인 경우 반환되는 핸들은 바로 가기 링크에 대한 핸들입니다.
  • CREATE_ALWAYS, TRUNCATE_EXISTING 또는 FILE_FLAG_DELETE_ON_CLOSE가 지정된 경우, 영향을 받는 파일은 바로 가기 링크입니다.

FILE_FLAG_OPEN_REPARSE_POINT가 지정되지 않았으며

  • 기존 파일이 열려 있고 바로 가기 링크인 경우, 반환되는 핸들은 대상에 대한 핸들입니다.
  • CREATE_ALWAYS, TRUNCATE_EXISTING 또는 FILE_FLAG_DELETE_ON_CLOSE가 지정된 경우, 영향을 받는 파일이 대상입니다.

경로가 바로 가기 링크를 가리키는 경우 함수는 대상에 대한 하드 링크를 만듭니다.

DeleteFile 및 DeleteFileTransacted

경로가 바로 가기 링크를 가리키는 경우 대상이 아닌 바로 가기 링크가 삭제됩니다. 대상을 삭제하려면 CreateFile을 호출하고 FILE_FLAG_DELETE_ON_CLOSE를 지정해야 합니다.

FindFirstChangeNotification

경로가 바로 가기 링크를 가리키는 경우 대상에 대한 알림 핸들이 만들어집니다. 애플리케이션이 바로 가기 링크를 포함하는 디렉터리에 대한 변경 알림을 받도록 등록한 경우 대상 파일이 아니라 바로 가기 링크가 변경된 경우에만 애플리케이션에 알림이 표시됩니다.

FindFirstFile 및 FindFirstFileTransacted

경로가 바로 가기 링크를 가리키는 경우 WIN32_FIND_DATA 버퍼에는 대상이 아닌 바로 가기 링크에 대한 정보가 포함됩니다.

FindFirstFileEx

경로가 바로 가기 링크를 가리키는 경우 WIN32_FIND_DATA 버퍼에는 대상이 아닌 바로 가기 링크에 대한 정보가 포함됩니다.

FindNextFile

경로가 바로 가기 링크를 가리키는 경우 WIN32_FIND_DATA 버퍼에는 대상이 아닌 바로 가기 링크에 대한 정보가 포함됩니다.

GetBinaryType

경로가 바로 가기 링크를 가리키는 경우 대상 파일이 사용됩니다.

GetCompressedFileSize 및 GetCompressedFileSizeTransacted

경로가 바로 가기 링크를 가리키는 경우 함수는 대상의 파일 크기를 반환합니다.

GetDiskFreeSpace

경로가 바로 가기 링크를 가리키는 경우 대상에서 작업이 수행됩니다.

GetDiskFreeSpaceEx

경로가 바로 가기 링크를 가리키는 경우 대상에서 작업이 수행됩니다.

GetFileAttributes

경로가 바로 가기 링크를 가리키는 경우 함수는 바로 가기 링크에 대한 특성을 반환합니다.

GetFileAttributesEx

경로가 바로 가기 링크를 가리키는 경우 함수는 바로 가기 링크에 대한 특성을 반환합니다.

GetFileSecurity

경로가 바로 가기 링크를 가리키는 경우 함수는 바로 가기 링크에 대한 특성을 반환합니다.

GetTempPath

경로가 바로 가기 링크를 가리키는 경우 임시 경로 이름은 바로 가기 링크를 유지합니다.

GetVolumeInformation

경로가 바로 가기 링크를 가리키는 경우 함수는 대상의 볼륨 정보를 반환합니다.

SetFileAttributes

경로가 바로 가기 링크를 가리키는 경우 함수는 바로 가기 링크에 대한 특성을 검색합니다.

SetFileSecurity

경로가 바로 가기 링크를 가리키는 경우 함수는 바로 가기 링크에 대한 특성을 반환합니다.

CopyFile

CopyFileTransacted

CopyFileEx

CreateFile

CreateFileTransacted

CreateHardLink

CreateHardLinkTransacted

DeleteFile

DeleteFileTransacted

FindFirstChangeNotification

FindFirstFile

FindFirstFileEx

FindFirstFileTransacted

FindNextFile

GetBinaryType

GetCompressedFileSize

GetCompressedFileSizeTransacted

GetDiskFreeSpace

GetDiskFreeSpaceEx

GetFileAttributes

GetFileAttributesEx

GetFileSecurity

GetTempPath

GetVolumeInformation

SetFileAttributes

SetFileSecurity