2012-07-02 22 views
5

Halihazırda var olan sembolik bağın hedefini nasıl değiştirebilirim? Herhangi bir çözüm işe yarayacak: konsol, powershell, vb.Windows'ta sembolik bağlantı için hedef değiştirin

Önemli olan bu değişikliği atomik olarak bu şekilde bağlantıyı silmek ve daha sonra yeni bir tane oluşturmak için benim için çalışmaz hale getirmektir.

+0

Silme işlemini ve rekreasyonu bir işlemde koparırsanız atomik olacağına inanıyorum. –

+0

Ne tür bir işlem? Dosya sistemi işlemi gibi dosya taşımak aynı disk üzerinde atomik olduğunu düşünüyorum. İki dosya işlemi değil. Yanılıyorsam, lütfen beni düzeltin. –

+0

Cevabımıma bakın. Windows Vista'da işlemsel NTFS desteği eklendi. –

cevap

2

Bu FSCTL_SET_REPARSE_POINT control code kullanarak ZwFsControlFile function ile mümkün görünüyor. En azından bu, Far Manager'ın İşlem İzleyicisi ile nasıl yaptığıyla ilgili olarak yaptım.

+0

Mar 2017'den itibaren [Far Manager] (http://svn.code.sf.net/p/farmanager/code/trunk/unicode_far/flink.cpp) [DeviceIoControl] kullanır (https://msdn.microsoft.com /en-us/library/windows/desktop/aa363216%28v=vs.85%29.aspx) sembolik bağlantı veya bağlantı hedef (ler) ini değiştirmek/düzenlemek için kullanılır. –

2

Sen işlem NTFS kullanabilirsiniz. aşağıdaki işlevleri Bkz:

olumsuz MS işlemler için destek kaldırıyoruz olmasıdır. Özellikle, Windows Server 2012'de tanıtılan yeni dosya sisteminde işlemler mevcut değildir.

+0

Teşekkür ederim, Harry. Hiçbir zaman işlem yapmak mümkün olmasa da. Ne yazık ki, kullanımdan kaldırılma kötü bir işarettir, bu yüzden kullanamayacağından emin değilim. –

İlgili konular