
我想做以下事情:
- 建立資料夾的捷徑(例如mLink.lnk-->C:\tmp)
- 這將透過電子郵件發送給用戶
- 移動和/或重命名資料夾(C:\tmp-->C:\tmp2)
- 為上一個快捷方式設定中間步驟
- 基本上,mLink.lnk 透過電子郵件發送的捷徑就會打開C:\tmp2
看來你應該能夠使用 mklink 並在先前的資料夾位置設定符號連結(C:\tmp) 然後指向新位置。基本上有以下設定:
mLink.lnk --> c:tmp --> c:\tmp2
不幸的是,我無法在我希望擁有這些快捷方式的網路共享上建立符號連結。The device does not support symbolic links
當我運行 mklink 時出現錯誤。
我有什麼不同的方法可以做到這一點嗎?或者對符號連結的限制基本上阻止我這樣做?
答案1
好的...首先:Windows .lnk 檔案原則上只是一個帶有資料夾名稱的簡單字串。因此,本質上,您只是向他們發送一些字串,該字串會自動複製到他們的資源管理器的地址欄中並打開(真正的工作原理有點複雜,但對於像C:\tmp 這樣的鏈接,這就是發生的情況)
其次 - Windows 通常不會追蹤這些文件,因為它們不是符號連結。如果您在 PC 上建立符號鏈接,其中 C:\tmp 指向資料夾 C:\tmp2,則這不會更改 LNK 檔案的內容。因此,您每封郵件發送的文件與先前完全相同。人們將在自己的系統上點擊鏈接,當然 LNK 仍然讀取“C:\tmp”,並且在他們的系統上沒有任何變化。
如果 LNK 指向網路共用(例如,將免費的網路字母 P:\ 連接到 samba 共用 \server1\tmp)並連結到此連線的驅動器,則它可以工作 - 因此 LNK 指向 P:\ 那麼如果您想要在伺服器上使用另一個臨時資料夾,只需更改伺服器上的共用資料夾,所有人都會自動使用新資料夾...
答案2
c:\tmp
建立最初指向c:\tmp1
伺服器的符號連結會更簡單。然後,透過刪除c:\tmp
並重新建立 tmp2 連結來變更為 tmp2 c:\tmp2
。
這樣,您將只擁有一個對用戶而言永遠不會更改的鏈接,但您可以隨時在伺服器上更改該鏈接。
如果這不起作用,則您的網路共用用戶端不支援符號連結擴充。