Visual Studio 2012 Güncelleştirme 1'de Scale-140 rozet logosunu kullanamazsınız

Bu makale, Microsoft Visual Studio 2012 Güncelleştirme 1'de Scale-140 rozet logosunu kullanamama sorununu çözmenize yardımcı olur.

Orijinal ürün sürümü: Windows 8, Visual Studio Premium 2012 Visual Studio Ultimate 2012 için Visual Studio Express 2012
Özgün KB numarası: 2792380

Sorun 1

Aşağıdaki senaryoyu inceleyin:

  • Visual Studio 2012 Güncelleştirme 1'i kullanarak bir uygulama oluşturursunuz.
  • Uygulamanın Scale-140 rozet logosu için 33 x 33 piksel .png bir dosya seçersiniz.
  • Uygulamayı paketlemeye çalışırsınız.

Bu senaryoda, uygulamayı paketleyemezsiniz. Ayrıca, aşağıdakine benzer bir hata iletisi alırsınız:

Uygulama bildirimi, geçerli boyutları olmayan 'images\BadgeLogo.scale-140.png' rozet logo resmine başvurur. 34x34 piksel olmalıdır.

Sorun 2

Aşağıdaki senaryoyu inceleyin:

  • Visual Studio 2012 Güncelleştirme 1'i kullanarak bir uygulama oluşturursunuz.
  • Uygulamanın Scale-140 rozet logosu için 34 x 34 piksel .png bir dosya seçersiniz.
  • Bu uygulamayı Windows Mağazası'na göndermeye çalışırsınız.

Bu senaryoda, uygulamayı Windows Mağazası'na gönderemezsiniz.

Neden

Bu sorunlar, Visual Studio 2012 Güncelleştirme 1'in Scale-140 rozet logosu için 34 x 34 piksel olan bir .png dosyası gerektirmesi nedeniyle oluşur. Ancak, Windows Mağazası ve Windows Uygulama Sertifikasyon Seti (WinACK), Scale-140 rozet logosu için görüntü dosyalarının 33 x 33 piksel olmasını gerektirir.

Geçici Çözüm

Bu soruna geçici bir çözüm bulmak için aşağıdaki adımları uygulayın:

  1. Çözüm Gezgini'da projeye sağ tıklayın ve ardından Projeyi Kaldır'ı seçin.

  2. Projeye sağ tıklayın ve düzenle'yi seçin.

  3. Aşağıdaki XML kodunu kapanış </Project> öğesinden önce proje dosyasının en altına ekleyin:

    <!-- Workaround for 33x33 badge logo issue. -->
    <Target Name="WorkaroundForBadgeLogoScale140Issue">
        <ItemGroup>
            <AppxManifestImageFileNameQuery Remove="./m:Package/m:Applications/m:Application/m:VisualElements/m:LockScreen/@BadgeLogo" />
        </ItemGroup>
        <ItemGroup>
            <AppxManifestImageFileNameQuery Include="./m:Package/m:Applications/m:Application/m:VisualElements/m:LockScreen/@BadgeLogo">
                <DescriptionID>BadgeLogo</DescriptionID>
                <ExpectedScaleDimensions>100:24x24;140:33x33;180:43x43</ExpectedScaleDimensions>
            </AppxManifestImageFileNameQuery>
        </ItemGroup>
    </Target>
    
  4. Aşağıdaki XML kodunu kapanış </Project> öğesinden önce proje dosyasının en altına ekleyin:

    Not

    Proje dosyanız zaten bir BeforeBuild hedef içeriyorsa özniteliğine DependsOnTargets ekleyinWorkaroundForBadgeLogoScale140Issue.

    <Target Name="BeforeBuild" DependsOnTargets="WorkaroundForBadgeLogoScale140Issue" />
    
  5. Proje dosyasını kaydedin ve kapatın.

  6. Çözüm Gezgini'da projeye sağ tıklayın ve ardından Projeyi Yeniden Yükle'yi seçin.

  7. Bildirim Tasarım Aracı 33 x 33 piksel olan bir Scale-140 logosu .png dosyası ekleyin.

Not

Bildirim Tasarım Aracı, rozet logosunun gerekli 34 x 34 piksel boyutunu karşılamadığını belirten bir uyarı görüntüler. Ancak Visual Studio uygulamayı paketler ve WinACK uygulamayı Windows Mağazası'na yayımlamanıza olanak tanır.