Manifest from Resources

Kaynaklardan Bildirim aracı, görüntü kaynaklarının (.png veya .xaml dosyaları) listesini alan bir konsol uygulamasıdır. Bu listeyi kullanarak, bu görüntülerin Visual Studio Görüntü Hizmeti ile kullanılmasını sağlayan bir .imagemanifest dosyası oluşturur. Ayrıca, bu araç mevcut bir .imagemanifest'e görüntü eklemek için kullanılabilir. Bu araç, Visual Studio uzantısına yüksek DPI ve görüntüler için temalı destek eklemek için kullanışlıdır. Oluşturulan .imagemanifest dosyası, Visual Studio uzantısının (.vsix) bir parçası olarak eklenip dağıtılmalıdır.

Aracı kullanma

Söz dizimi

ManifestFromResources /resources:<Dir1>;<Img1> /assembly:<AssemblyName><İsteğe Bağlı Args>

Bağımsız Değişkenler

Anahtar adı Notlar Gerekli veya İsteğe Bağlı
/Kaynaklar Resimlerin veya dizinlerin noktalı virgülle ayrılmış listesi. Bu liste her zaman bildirimde olacak görüntülerin tam listesini içermelidir. Yalnızca kısmi bir liste verilirse, dahil edilmeyen girdiler kaybolur.

Belirli bir kaynak dosyası bir görüntü şeridiyse, araç bildirime her alt görüntüyü eklemeden önce dosyayı ayrı görüntülere böler.

Resim .png bir dosyaysa, aracın görüntü için doğru öznitelikleri doldurabilmesi için adı şu şekilde biçimlendirmenizi öneririz: <Ad>.<Genişlik>.<Yükseklik>.png.
Zorunlu
/meclis Yönetilen derlemenin adı (uzantı dahil değil) veya kaynakları barındıran yerel derlemenin çalışma zamanı yolu (bildirimin çalışma zamanı konumuna göre). Ayrıca, derleme kesin olarak adlandırılmışsa, bu giriş derleme sürümünü ve ortak anahtar belirtecini içermelidir. Zorunlu
/manifesto Oluşturulan .imagemanifest dosyasına verilmeyen ad. Bu, dosyayı farklı bir konumda oluşturmak için mutlak veya göreli bir yol da içerebilir. Varsayılan ad, derleme adıyla eşleşir. Buna ek olarak, /assembly anahtarında ek tanımlayıcı ad bilgileri sağlanırken, derleme tanımlayıcı adı bilgilerinin bildirim adına dahil edilmemesi için bu anahtara kullanıcı dostu bir bildirim adı sağlanmalıdır.

Varsayılan: <Current Directory>\<Assembly.imagemanifest>
İsteğe bağlı
/guidName Oluşturulan bildirimdeki tüm görüntüler için GUID simgesine verecek ad.

Varsayılan: AssetsGuid
İsteğe bağlı
/rootPath Yönetilen kaynak URI'leri oluşturulmadan önce çıkarılması gereken kök yol. (Bu bayrak, aracın göreli URI yolunun yanlış olması ve kaynakların yüklenememesine neden olması durumlarına yardımcı olmaktır.)

Varsayılan: <Geçerli Dizin>
İsteğe bağlı
/Özyinelemeli Bu bayrağın ayarlanması, araca /resources bağımsız değişkenindeki dizinleri özyinelemeli olarak aramasını bildirir. Bu bayrağın atlanması dizinlerde yalnızca üst düzey bir aramayla sonuçlanırsa. İsteğe bağlı
/isNative Derleme bağımsız değişkeni yerel bir derlemenin yolu olduğunda bu bayrağı ayarlayın. Derleme bağımsız değişkeni yönetilen derlemenin adı olduğunda bu bayrağı atla. (Bu bayrak hakkında daha fazla bilgi için Notlar bölümüne bakın.) İsteğe bağlı
/newGuids Bu bayrağın ayarlanması, araciya görüntülerin GUID simgesi için var olan bildirimden birini birleştirmek yerine yeni bir değer oluşturmasini söyler. İsteğe bağlı
/newIds Bu bayrağın ayarlanması, ara çubuğuna mevcut bildirimdeki değerleri birleştirmek yerine her görüntü için yeni kimlik simgesi değerleri oluşturmasını söyler. İsteğe bağlı
/noLogo Bu bayrağın ayarlanması, ürün ve telif hakkı bilgilerinin yazdırılıp yazdırılamamalarını engeller. İsteğe bağlı
/? Yardım bilgilerini yazdırır. İsteğe bağlı
/help Yardım bilgilerini yazdırır. İsteğe bağlı

Örnekler

  • ManifestFromResources /resources:D:\Images /assembly:My.Assembly.Name /isNative

  • ManifestFromResources /resources:D:\Images\Image1.png; D:\Images\Image1.xaml /assembly:My.Assembly.Name /manifest:MyImageManifest.imagemanifest

  • ManifestFromResources /resources:D:\Images\Image1.png; D:\Images\Image1.xaml /assembly:My.Assembly.Name; v1.0.0.0; abcdef0123456789 /manifest:MyImageManifest.imagemanifest

  • ManifestFromResources /resources:D:\Images\Image1.png; D:\Images\Image1.xaml /assembly:My.Assembly.Name /guidName:MyImages /newGuids /newIds

Notlar

  • Araç yalnızca .png ve .xaml dosyalarını destekler. Diğer tüm görüntü veya dosya türleri yoksayılır. Kaynakları ayrıştırırken karşılaşılan tüm desteklenmeyen türler için bir uyarı oluşturulur. Araç kaynakları ayrıştırma işlemini tamamladığında desteklenen görüntü bulunamazsa bir hata oluşturulur

  • .png görüntüleri için önerilen biçimin ardından araç, görüntünün gerçek boyutundan farklı olsa bile .png için boyut/boyut değerini belirtilen biçime ayarlar.

  • genişlik/yükseklik biçimi .png görüntüler için atlanabilir, ancak araç resmin gerçek genişliğini/yüksekliğini okur ve bunları resmin boyut/boyut değeri için kullanır.

  • Bu aracın aynı görüntü şeridinde aynı .imagemanifest için birden çok kez çalıştırılması, yinelenen bildirim girdilerine neden olur. Bu sonuç, aracın görüntü şeridini tek başına görüntülere bölmeye ve ardından bunları mevcut bildirime eklemeye çalışmalarından kaynaklanır.

  • Birleştirme (/newGuids veya /newIds) yalnızca araç tarafından oluşturulan bildirimler için yapılmalıdır. Başka yollarla özelleştirilmiş veya oluşturulan bildirimler doğru birleştirilmeyebilir.

  • Yerel derlemeler için oluşturulan bildirimlerin, kimlik simgelerinin yerel derlemenin .rc dosyasındaki kaynak kimlikleriyle eşleşmesi için oluşturma işleminden sonra el ile düzenlenmesi gerekebilir.

Örnek Çıkış

Basit görüntü bildirimi

Görüntü bildirimi şu .xml dosyasına benzer:

<?xml version="1.0" encoding="utf-8"?>
<!-- This file was generated by the ManifestFromResources tool.-->
<!-- Version: 14.0.15197 -->
<ImageManifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/ImageManifestSchema/2014">
  <Symbols>
    <String Name="Resources" Value="/My.Assembly.Name;Component/Resources/Images" />
    <Guid Name="AssetsGuid" Value="{fb41b7ef-6587-480c-aa27-5b559d42cfc9}" />
    <ID Name="MyImage" Value="0" />
  </Symbols>
  <Images>
    <Image Guid="$(AssetsGuid)" ID="$(MyImage)">
      <Source Uri="$(Resources)/Xaml/MyImage.xaml" />
      <Source Uri="$(Resources)/Png/MyImage.16.16.png">
        <Size Value="16" />
      </Source>
    </Image>
  </Images>
  <ImageLists />
</ImageManifest>

Görüntü şeridi için görüntü bildirimi

Görüntü şeridi için görüntü bildirimi, bu .xml dosyasına benzer:

<?xml version="1.0" encoding="utf-8"?>
<!-- This file was generated by the ManifestFromResources tool.-->
<!-- Version: 14.0.15197 -->
<ImageManifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/ImageManifestSchema/2014">
  <Symbols>
    <String Name="Resources" Value="/My.Assembly.Name;Component/Resources/ImageStrip" />
    <Guid Name="AssetsGuid" Value="{fb41b7ef-6587-480c-aa27-5b559d42cfc9}" />
    <ID Name="MyImageStrip_0" Value="1" />
    <ID Name="MyImageStrip_1" Value="2" />
    <ID Name="MyImageStrip" Value="3" />
  </Symbols>
  <Images>
    <Image Guid="$(AssetsGuid)" ID="$(MyImageStrip_0)">
      <Source Uri="$(Resources)/MyImageStrip_0.png">
        <Size Value="16" />
      </Source>
    </Image>
    <Image Guid="$(AssetsGuid)" ID="$(MyImageStrip_1)">
      <Source Uri="$(Resources)/MyImageStrip_1.png">
        <Size Value="16" />
      </Source>
    </Image>
  </Images>
  <ImageLists>
    <ImageList Guid="$(AssetsGuid)" ID="$(MyImageStrip)">
      <ContainedImage Guid="$(AssetsGuid)" ID="$(MyImageStrip_0)" />
      <ContainedImage Guid="$(AssetsGuid)" ID="$(MyImageStrip_1)" />
    </ImageList>
  </ImageLists>
</ImageManifest>

Yerel derleme görüntü kaynakları için görüntü bildirimi

Yerel görüntülerin görüntü bildirimi bu .xml dosyasına benzer:

<?xml version="1.0" encoding="utf-8"?>
<!-- This file was generated by the ManifestFromResources tool.-->
<!-- Version: 14.0.15198 -->
<ImageManifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/ImageManifestSchema/2014">
  <Symbols>
    <String Name="Resources" Value="..\Assembly\Folder\My.Assembly.Name" />
    <Guid Name="AssetsGuid" Value="{442d8739-efde-46a4-8f29-e3a1e5e7f8b4}" />
    <ID Name="MyImage1" Value="0" />
    <ID Name="MyImage2" Value="1" />
  </Symbols>
  <Images>
    <Image Guid="$(AssetsGuid)" ID="$(MyImage1)">
      <Source Uri="$(Resources)">
        <Size Value="16" />
        <NativeResource ID="$(MyImage1)" Type="PNG" />
      </Source>
    </Image>
    <Image Guid="$(AssetsGuid)" ID="$(MyImage2)">
      <Source Uri="$(Resources)">
        <Size Value="16" />
        <NativeResource ID="$(MyImage2)" Type="PNG" />
      </Source>
    </Image>
  </Images>
  <ImageLists />
</ImageManifest>