共用方式為


CreateSymbolicLinkA 函式 (winbase.h)

建立符號連結。

若要以交易作業的形式執行這項作業,請使用 CreateSymbolicLinkTransacted 函式。

語法

BOOLEAN CreateSymbolicLinkA(
  [in] LPCSTR lpSymlinkFileName,
  [in] LPCSTR lpTargetFileName,
  [in] DWORD  dwFlags
);

參數

[in] lpSymlinkFileName

要建立的符號連結。

此參數可能包含路徑。

根據預設,名稱限製為MAX_PATH個字元。 若要將此限制延伸至 32,767 寬字元,請在路徑前面加上 “\\?\”。 如需詳細資訊,請參閱 命名檔案、路徑和命名空間

提示

從 Windows 10 版本 1607 開始,您可以選擇移除MAX_PATH限制,而不需預先加上 “\\?\”。 如需詳細資訊,請參閱 命名檔案、路徑和命名空間 的一節。

[in] lpTargetFileName

要建立之符號鏈接的目標名稱。

如果 lpTargetFileName 有與其相關聯的裝置名稱,則會將連結視為絕對連結;否則,鏈接會被視為相對連結。

此參數可能包含路徑。

根據預設,名稱限製為MAX_PATH個字元。 若要將此限制延伸至 32,767 寬字元,請在路徑前面加上 “\\?\”。 如需詳細資訊,請參閱 命名檔案、路徑和命名空間

提示

從 Windows 10 版本 1607 開始,您可以選擇移除MAX_PATH限制,而不需預先加上 “\\?\”。 如需詳細資訊,請參閱 命名檔案、路徑和命名空間 的一節。

[in] dwFlags

指出鏈接目標 lpTargetFileName是否為目錄。

價值 意義
0x0
鏈接目標是檔案。
SYMBOLIC_LINK_FLAG_DIRECTORY
0x1
鏈接目標為目錄。
SYMBOLIC_LINK_FLAG_ALLOW_UNPRIVILEGED_CREATE
0x2
指定此旗標,以允許在未提高進程時建立符號連結。 在UWP中,必須先在機器上啟用 開發人員模式,此選項才能運作。 在 MSIX 下,不需要為此旗標啟用開發人員模式。

傳回值

如果函式成功,則傳回值為非零值。

如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

言論

符號連結可以是絕對連結或相對連結。 絕對連結是指定路徑名稱每個部分的連結;相對連結是相對於相對連結規範位於指定路徑的位置來決定。 使用下列慣例指定相對連結:

  • Dot (. 和 ..) 慣例,例如 “..\“ 會解析相對於父目錄的路徑。
  • 沒有斜線的名稱 (\\)—例如,“tmp” 會解析相對於目前目錄的路徑。
  • 根相對 -- 例如,“\Windows\System32” 解析為 “目前的磁碟驅動器:\Windows\System32”。
  • 目前的工作目錄相對 —例如,如果目前的工作目錄是 C:\Windows\System32,“C:File.txt”解析為 “C:\Windows\System32\File.txt”。
    注意 如果您指定目前的工作目錄相對連結,則會建立為絕對連結,因為目前的工作目錄是根據使用者和線程處理的方式。
     
若要移除符號連結,請刪除檔案(使用 DeleteFile 或類似 API)或移除目錄(使用 RemoveDirectory 或類似 API),視使用何種符號連結類型而定。

在 Windows 8 和 Windows Server 2012 中,下列技術支援此功能。

科技 支援
伺服器消息塊 (SMB) 3.0 通訊協定 是的
SMB 3.0 透明故障轉移 (TFO) 是的
具有向外延展檔案共用的SMB 3.0(SO)
叢集共用磁碟區檔案系統 (CsvFS)
復原檔案系統 (ReFS) 是的
 

CsvF 不支援軟連結或任何其他重新分析點。

注意

winbase.h 標頭會將 CreateSymbolicLink 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 winbase.h (包括 Windows.h)
連結庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

CreateSymbolicLinkTransacted

檔案管理功能

符號連結