Bu soru bir süre önce sorulmuştu, ancak benim yaşadığım sorunla aynı türden bir soruna ait.
Sorun:
- Kodumuzu kontrol etmek istiyoruz.
- Daha sonra projemizi inşa etmek istiyoruz.
- Derlememiz sırasında, derleme işleminin tamamlanması için uygun dosyalara sahip olduğumuzdan, dosyaların taşınması için Derleme Olaylarına güveniyoruz.
- Derleme Etkinliğimiz dosyaları kopyalamaya çalıştığında, Erişim Engellendi hataları alıyoruz.
Sebep:
- Team Foundation Server Visual Studio Eklentisi, dosyalarımızı iade ettiğimizde dosyalarımızdaki Salt Okunur özniteliğini OKUMA DOĞRU olarak değiştirir.
Derleme Etkinliği Örneği:
- "$ (TargetDir) SomeFile.ext" "$ (ProjectDir)" kopyala
Yukarıda, bir dosyayı Hedef Derleme Yolumuzdan (bin \ debug veya bin \ release klasörleri) Proje Klasörümüze taşımamız yeterlidir. Benim durumumda, bu, yükleyicime proje oluşturulmuş dosyaları dahil edebilmemdi. Kurulumcum onları Proje Çıktısının bir parçası olarak kapmıyordu.
Düzeltme: (Bunu çözdüğümde neredeyse yüzüme tekme atıyordu)
Yeni Yapı Etkinliği:
- attrib -R "$ (ProjeDir) BazıDosya.ext"
- "$ (TargetDir) SomeFile.ext" "$ (ProjectDir)" kopyala
- attrib + R "$ (ProjectDir) BazıDosya.ext"
Hepimiz Build Events ile eğleniyoruz değil mi? Yukarıda sadece 2 şey yapıyorum, salt okunur özelliğini kaldırıyorum, artık dosyalar salt okunur değil. Dosyamı aslında istediğim gibi kopyalayın. Ardından, Visual Studio ve Team Foundations'ı mutlu etmek için Salt Okunur Özniteliğini (isteğe bağlı) değiştirin.
Ve evet ... Bu konuda hala yüzüme tekme atıyorum.