我將使用symlink()函數的從Unix到C/C++代碼移植到Windows。將帶有符號鏈接()函數的Unix代碼移植到Windows中
據我所知,最近的Windows文件系統具有相當的符號鏈接。
什麼是最好的/最便攜的方式取代symlink()函數,所以相同的代碼在兩個平臺上工作?
我將使用symlink()函數的從Unix到C/C++代碼移植到Windows。將帶有符號鏈接()函數的Unix代碼移植到Windows中
據我所知,最近的Windows文件系統具有相當的符號鏈接。
什麼是最好的/最便攜的方式取代symlink()函數,所以相同的代碼在兩個平臺上工作?
由於Windows Vista中有創造真正的符號鏈接的功能:CreateSymbolicLink
注意,結在其他的答案中提到唯一支持的目錄,甚至與較新的功能,Windows符號鏈接要求你指定是否目標是一個目錄或文件。所以你不一定能夠得到一個微不足道的「直接替換」symlink()
函數。
好點!我絕對需要符號鏈接()來處理文件。 –
Windows上的底層技術叫做Junction points。升壓文件系統庫是跨平臺的,可以使符號鏈接:
http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/reference.html#create_symlink
@Timo Geusch:感謝您更新最新版本的鏈接 - 我剛剛開始編輯時。 –
即使在較舊的Windows,我相信Win2k,甚至可能是NT4,你都可以使用NTFS連接。 –