Sdílet prostřednictvím


Symbolické efekty odkazů na funkce systémů souborů

Použití symbolických odkazů ovlivňuje několik standardních funkcí souborů, které používají názvy cest k určení jednoho nebo více souborů. Toto téma obsahuje seznam těchto funkcí a popisuje změny chování:

V následujících popisech se používají následující termíny:

  • Zdrojový soubor – původní soubor, který se má zkopírovat.
  • Cílový soubor – nově vytvořená kopie souboru.
  • Cíl – entita, na kterou symbolický odkaz odkazuje.

Poznámka

Chování funkcí, které přijímají popisovač vytvořený pomocí funkce CreateFile, například funkce GetFileTime, se bude lišit v závislosti na tom, zda CreateFile funkce byla volána pomocí příznaku FILE_FLAG_OPEN_REPARSE_POINT. Další informace naleznete v tématu CreateFile a následující CreateFile a CreateFileTransacted oddílu.

 

CopyFile a CopyFileTransacted

Pokud je zdrojový soubor symbolický odkaz, skutečný zkopírovaný soubor je cílem symbolického odkazu.

Pokud cílový soubor již existuje a je symbolickým odkazem, cíl symbolického propojení se přepíše zdrojovým souborem.

CopyFileEx

Pokud je zadán COPY_FILE_COPY_SYMLINK a:

  • Pokud je zdrojový soubor symbolickým odkazem, zkopíruje se symbolický odkaz, nikoli cílový soubor.
  • Pokud zdrojový soubor není symbolický odkaz, chování se nezmění.
  • Pokud je cílový soubor existující symbolický odkaz, symbolický odkaz se přepíše, nikoli cílový soubor.
  • Pokud je zadán také COPY_FILE_FAIL_IF_EXISTS a cílový soubor je existující symbolický odkaz, operace ve všech případech selže.

Pokud není zadán COPY_FILE_COPY_SYMLINK a:

  • Pokud je zadán také COPY_FILE_FAIL_IF_EXISTS a cílový soubor je existující symbolický odkaz, operace selže pouze v případě, že existuje cíl symbolického propojení.
  • Pokud není zadán COPY_FILE_FAIL_IF_EXISTS, nedojde ke změně chování.

Windows Server 2003 a Windows XP: Příznak COPY_FILE_COPY_SYMLINK není podporován. Pokud je zdrojový soubor symbolický odkaz, skutečný zkopírovaný soubor je cílem symbolického odkazu.

CreateFile a CreateFileTransacted

Pokud volání této funkce vytvoří nový soubor, nedojde ke změně chování.

Pokud je zadán FILE_FLAG_OPEN_REPARSE_POINT a:

  • Pokud je otevřen existující soubor a jedná se o symbolický odkaz, vrácený popisovač je popisovač symbolického odkazu.
  • Pokud jsou zadány CREATE_ALWAYS, TRUNCATE_EXISTINGnebo FILE_FLAG_DELETE_ON_CLOSE, je ovlivněný soubor symbolickým odkazem.

Pokud není zadán FILE_FLAG_OPEN_REPARSE_POINT a:

  • Pokud je otevřen existující soubor a jedná se o symbolický odkaz, vrácený popisovač je popisovač cíle.
  • Pokud jsou zadány CREATE_ALWAYS, TRUNCATE_EXISTINGnebo FILE_FLAG_DELETE_ON_CLOSE, je ovlivněný soubor cílem.

Pokud cesta odkazuje na symbolický odkaz, funkce vytvoří pevný odkaz na cíl.

DeleteFile a DeleteFileTransacted

Pokud cesta odkazuje na symbolický odkaz, symbolický odkaz se odstraní, nikoli cíl. Chcete-li odstranit cíl, musíte volat CreateFile a zadat FILE_FLAG_DELETE_ON_CLOSE.

FindFirstChangeNotification

Pokud cesta odkazuje na symbolický odkaz, vytvoří se popisovač oznámení pro cíl. Pokud se aplikace zaregistrovala k přijímání oznámení o změnách pro adresář, který obsahuje symbolické odkazy, aplikace bude upozorněna pouze v případě, že byly symbolické odkazy změněny, nikoli cílové soubory.

FindFirstFile a FindFirstFileTransacted

Pokud cesta odkazuje na symbolický odkaz, WIN32_FIND_DATA vyrovnávací paměť obsahuje informace o symbolickém propojení, nikoli cíli.

FindFirstFileEx

Pokud cesta odkazuje na symbolický odkaz, WIN32_FIND_DATA vyrovnávací paměť obsahuje informace o symbolickém propojení, nikoli cíli.

FindNextFile

Pokud cesta odkazuje na symbolický odkaz, WIN32_FIND_DATA vyrovnávací paměť obsahuje informace o symbolickém propojení, nikoli cíli.

GetBinaryType

Pokud cesta odkazuje na symbolický odkaz, použije se cílový soubor.

GetCompressedFileSize a GetCompressedFileSizeTransacted

Pokud cesta odkazuje na symbolické propojení, vrátí funkce velikost souboru cíle.

GetDiskFreeSpace

Pokud cesta odkazuje na symbolické propojení, operace se provede v cíli.

GetDiskFreeSpaceEx

Pokud cesta odkazuje na symbolické propojení, operace se provede v cíli.

GetFileAttributes

Pokud cesta odkazuje na symbolický odkaz, vrátí funkce atributy symbolického propojení.

GetFileAttributesEx

Pokud cesta odkazuje na symbolický odkaz, vrátí funkce atributy symbolického propojení.

GetFileSecurity

Pokud cesta odkazuje na symbolický odkaz, vrátí funkce atributy symbolického propojení.

GetTempPath

Pokud cesta odkazuje na symbolický odkaz, název dočasné cesty udržuje všechny symbolické odkazy.

GetVolumeInformation

Pokud cesta odkazuje na symbolický odkaz, vrátí funkce informace o svazku cíle.

SetFileAttributes

Pokud cesta odkazuje na symbolický odkaz, funkce načte atributy symbolického propojení.

SetFileSecurity

Pokud cesta odkazuje na symbolický odkaz, vrátí funkce atributy symbolického propojení.

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