2012-01-24 16 views
11

Konteyner dediğimiz bir proje üzerinde çalışıyorum. Kapsayıcının bir dizi EmbeddedResources var. Bu EmbeddedResources için orijinal dosyalar, FileProject adını vereceğimiz başka bir projedir.Visual Studio projesinde tüm bir klasörün yerleşik bir kaynak olması nasıl olabilir?

FileProject, şu anda farklı geliştiricilerden oluşan bir grup tarafından üzerinde çalışılan ve her zaman değişmekte olan bir projedir, bu yüzden EmbeddedResource dosyalarımı birbirine bağlıyorum - böylece orijinal proje değiştiğinde ve projemin yeniden oluşturulmasında değişiklikleri alır.

Bu kurulum, bir dosya her değiştiğinde yakalanır, ancak yeni bir dosya eklendiğinde veya projeden kaldırıldığında yakalanmaz. EmbeddedResources'i, dosya kaldırma ve ekleme işlemlerini yakalamak için Visual Studio'daki bir klasör yapısının tümünden çıkarmanın bir yolu var mı?

+0

VS SV'nin içinde SVN kullanıyor musunuz? Örneğin. http://ankhsvn.open.collab.net/ Bu, paylaşılan bir proje üzerinde çalışan çok sayıda mühendis için harika bir başlangıç ​​olacaktır. –

+0

Soruyu yanlış anlamış olabilirim. –

+0

Büyük miktarda gömülü kaynak, bir setup.exe dosyası için gerçekten zayıf bir alternatiftir. SysInternals'ın VMMap'ını sürecinizde hiç çalıştırdınız mı? Bir .zip dosyası, bu sorunu çözmek için basit bir yaklaşım olacaktır. –

cevap

17

düzenleme projesi bir metin editörü Kap dosyası ve FileProject dosyalara bağlantı <EmbeddedResource> unsurları bulmak: <EmbeddedResource> tek olan

<EmbeddedResource Include="..\FileProject\Copy.bmp"> 
    <Link>Copy.bmp</Link> 
</EmbeddedResource> 
<EmbeddedResource Include="..\FileProject\Paste.bmp"> 
    <Link>Paste.bmp</Link> 
</EmbeddedResource> 

Bu unsurların tümünü silme ve bunların yerine uygun bir joker vardır elemanı: Eğer FileProject için Cut.bmp eklerseniz Şimdi

<EmbeddedResource Include="..\FileProject\*.bmp" /> 

, aynı zamanda gösterecektir Kapsayıcı içinde.

+1

Bu yaklaşım, yeni eklenen dosyalar Oluştur eylem İçeriği ile .csproj dosyasında görünmesine karşın, aynı zamanda uygulamada EmbeddedResource işlevi görse de çalışır. –

İlgili konular