- Ben görsel bir stüdyo 2010 projesi özel dosyaların bir grup var.
- Bu özel dosyalar üzerinde, değiştiklerinde bir araç çalıştırmam gerekiyor.
- Araç, varolan .cpp dosyaları tarafından dahil edilen .h dosyaları oluşturur.
- Aracın, oluşturma işleminin bir parçası olarak çalışmasını istiyorum.
- Görsel stüdüsten çalışması gerekir, ancak ideal olarak bir msbuild işleminin parçası olarak da çalışabilir.
Mevcut standart altı çözümler her dosya üzerinde
, bunu eklemek her zaman, özel Build'a sonra, dosya ayarlarına gidin Custom Aracı kurmak için Öğe Türü ayarlayabilir ve Takım diyaloğu, komut satırı parametrelerini ayarlayın, (sabit kodlanmış) çıktıları ayarlayın ve (sabit kodlu) ek bağımlılıkları ayarlayın.
Açıkçası, bu kötü bir çözümdür, çünkü her özel tipte yeni bir dosya eklediğinizde önemsiz ve hatasız bir iş miktarıdır.
uzatma .foo ne olursa olsun dosya için, bu alet bar.exe çalışır Görsel stüdyo kurmak
istenen çözüm, ne zaman .foo dosyası değişiklikleri, bu CPP kodu derler önce.
şeyler ben Buna dayanarak
çalıştılar: http://msdn.microsoft.com/en-us/library/3e889s84(v=vs.100).aspx Bir .targets ve .xml dosyasını kurmak için çalıştı. Bununla birlikte, görsel bir stüdyosunda görünecek şekilde yeni bir Öğe Türü yaratmanın nasıl bir yolunu bulamıyorum, ya da .foo türündeki her dosyaya nasıl büyülü bir şekilde uygulanacağını anlayamıyorum. Bunun üzerine, benim bar.exe aracımı çağırma eylemini açıklayan herhangi bir şey için herhangi bir bağlantı nerede olduğunu anlayamadım.
Mevcut Öğe Türlerini izlemek ve bunların gerçek oluşturma eylemlerine nasıl dönüştürüleceğini belirlemek için tüm görsel stüdyonun xml/target dosyalarını aramayı denedim. ProjectItemsSchema'da tanımlanan bir grup olduğu ItemType'ın duvarında her zaman sona erer, ancak nerede uygulandığını veya bunları nasıl uygulayabildiğimi bulamıyorum.
MSDN'in belgeleri tam bir başarısızlık oldu ve sanırım, potansiyel olarak ilgili her sayfayı on kez boş bir şekilde okudum. Visual Studio 2008
, bu gibi görünen bir .rules dosyası ile çalışan bu tür şeyleri vardı:
<?xml version="1.0" encoding="utf-8"?>
<VisualStudioToolFile
Name="Foo Build Rules"
Version="8.00"
>
<Rules>
<CustomBuildRule
Name="FooBuild"
DisplayName="FooGen"
CommandLine="..\..\tools\FooGen.exe [inputs]"
Outputs="$(InputName).h"
AdditionalDependencies="*.foo"
FileExtensions="*.foo"
ExecutionDescription="Generating Foos..."
>
<Properties>
</Properties>
</CustomBuildRule>
</Rules>
</VisualStudioToolFile>
Ancak bu işlevselliği 2010 yılında kullanımdan kaldırıldı ve ben anlamaya geçiremedi yeni sistemle nasıl çoğaltılabiliriz.
Yardım?
Bunu kontrol ettiniz mi? http://msdn.microsoft.com/en-us/library/xfsbz6cw(v=vs.100).aspx – hege
Onlara ben okumak gerekir varsayalım Artık 2008. –
çalışmak ne 2008 yılında kullanıyordum vardır çok bu bir: http://blogs.msdn.com/b/vcblog/archive/2010/04/21/quick-help-on-vs2010-custom-build-rule.aspx. Gözlerimi yakalayan şey, buna göre, bir .props dosyasına ihtiyacın var, belki de eksik olan budur. Yine de denemedim .... – hege