<InstallChecks> öğesi (önyükleyici)

öğesi, InstallChecks bir uygulama için tüm uygun önkoşulların yüklendiğinden emin olmak için yerel bilgisayarda çeşitli testler başlatmayı destekler.

Sözdizimi

<InstallChecks>
    <AssemblyCheck
        Property
        Name
        PublicKeyToken
        Version
        Language
        ProcessorArchitecture
    />
    <RegistryCheck
        Property
        Key
        Value
    />
    <ExternalCheck
        PackageFile
        Property
        Arguments
    />
    <FileCheck
        Property
        FileName
        SearchPath
        SpecialFolder
        SearchDepth
    />
    <MsiProductCheck
        Property
        Product
        Feature
    />
    <RegistryFileCheck
        Property
        Key
        Value
        FileName
        SearchDepth
    />
</InstallChecks>

AssemblyCheck

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. önyükleyici, öğesinin AssemblyChecktanımladığı derlemenin genel derleme önbelleğinde (GAC) bulunduğundan emin olur. Öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
Name Gerekli. Denetlenecek derlemenin tam adı.
PublicKeyToken Gerekli. Bu kesin olarak adlandırılmış derlemeyle ilişkili ortak anahtarın kısaltılmış biçimi. GAC'de depolanan tüm derlemelerin adı, sürümü ve ortak anahtarı olmalıdır.
Version Gerekli. Derlemenin sürümü.

Sürüm numarası birincil sürüm> biçimindedir<.<ikincil sürüm>.<derleme sürümü>.<düzeltme sürümü>.
Language isteğe bağlı. Yerelleştirilmiş derlemenin dili. Varsayılan neutral değeridir.
ProcessorArchitecture isteğe bağlı. Bu yükleme tarafından hedeflenen bilgisayar işlemcisi. Varsayılan msil değeridir.

ExternalCheck

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. Önyükleyici, her örneği ExternalCheckiçin adlandırılmış dış programı ayrı bir işlemde yürütür ve çıkış kodunu tarafından Propertybelirtilen özellikte depolar. ExternalCheck karmaşık bağımlılık denetimleri uygulamak veya bir bileşenin varlığını denetlemenin tek yolu bunun örneğini oluşturmak olduğunda kullanışlıdır.

ExternalCheck öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
PackageFile Gerekli. Yürütülecek dış program. Program, kurulum dağıtım paketinin parçası olmalıdır.
Arguments isteğe bağlı. komut satırı bağımsız değişkenlerini tarafından adlandırılan yürütülebilir dosyaya sağlar PackageFile.

Dosya Denetimi

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. her örneği FileCheckiçin önyükleyici, adlandırılmış dosyanın var olup olmadığını belirler ve dosyanın sürüm numarasını döndürür. Dosyanın sürüm numarası yoksa, önyükleyici tarafından Property adlandırılan özelliği 0 olarak ayarlar. Dosya yoksa, Property herhangi bir değere ayarlanmaz.

FileCheck öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
FileName Gerekli. Bulunacak dosyanın adı.
SearchPath Gerekli. Dosyanın arandığı disk veya klasör. Bu, atanmışsa SpecialFolder göreli bir yol olmalıdır; aksi takdirde mutlak bir yol olmalıdır.
SpecialFolder isteğe bağlı. Windows veya ClickOnce için özel öneme sahip bir klasör. Varsayılan değer, mutlak bir yol olarak yorumlamaktır SearchPath . Geçerli değerler şunlardır:

AppDataFolder. Bu ClickOnce uygulamasının uygulama veri klasörü; geçerli kullanıcıya özgü.

CommonAppDataFolder. Tüm kullanıcılar tarafından kullanılan uygulama veri klasörü.

CommonFilesFolder. Geçerli kullanıcı için Ortak Dosyalar klasörü.

LocalDataAppFolder. Dolaşım dışı uygulamaların veri klasörü.

ProgramFilesFolder. 32 bit uygulamalar için standart Program Files klasörü.

StartUpFolder. Sistem başlangıcında başlatılan tüm uygulamaları içeren klasör.

SystemFolder. 32 bit sistem DLL'leri içeren klasör.

WindowsFolder. Windows sistem yüklemesini içeren klasör.

WindowsVolume. Windows sistem yüklemesini içeren sürücü veya bölüm.
SearchDepth isteğe bağlı. Adlandırılmış dosya için alt klasörlerde arama derinliği. Arama derinlik önceliklidir. Varsayılan değer 0'dır ve bu da aramayı ve SearchPath tarafından belirtilen en üst düzey klasörle SpecialFolder kısıtlar.

MsiProductCheck

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. Önyükleyici, her örneği MsiProductCheckiçin belirtilen Microsoft Windows Installer yüklemesinin tamamlanana kadar çalışıp çalışmadığını denetler. Özellik değeri, yüklü ürünün durumuna bağlı olarak ayarlanır. Pozitif değer ürünün yüklü olduğunu, 0 veya -1 ise yüklenmediğini gösterir. (Daha fazla bilgi için lütfen MsiQueryFeatureState Windows Installer SDK işlevine bakın.) . Windows Installer bilgisayarda yüklü değilse ayarlanmamıştır Property .

MsiProductCheck öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
Product Gerekli. Yüklü ürünün GUID değeri.
Feature isteğe bağlı. Yüklü uygulamanın belirli bir özelliği için GUID.

RegistryCheck

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. Önyükleyici, her örneği RegistryCheckiçin belirtilen kayıt defteri anahtarının var olup olmadığını veya belirtilen değere sahip olup olmadığını denetler.

RegistryCheck öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
Key Gerekli. Kayıt defteri anahtarının adı.
Value isteğe bağlı. Alınacak kayıt defteri değerinin adı. Varsayılan değer, varsayılan değerin metnini döndürmektir. Value dize veya DWORD olmalıdır.

RegistryFileCheck

Bu öğe isteğe bağlı bir alt öğesidir InstallChecks. Önyükleyici, her örneği RegistryFileCheckiçin belirtilen dosyanın sürümünü alır ve önce belirtilen kayıt defteri anahtarından dosyanın yolunu almaya çalışır. Bu, özellikle kayıt defterinde değer olarak belirtilen bir dizindeki bir dosyayı aramak istediğinizde kullanışlıdır.

RegistryFileCheck öğe içermez ve aşağıdaki özniteliklere sahiptir.

Öznitelik Açıklama
Property Gerekli. Sonucu depolamak için özelliğin adı. Bu özelliğe öğesinin alt öğesi olan öğesinin InstallConditions altındaki bir testten Command başvurulabilir. Daha fazla bilgi için bkz <. Commands> Öğesi.
Key Gerekli. Kayıt defteri anahtarının adı. Özniteliği ayarlanmadığı sürece File değeri dosyanın yolu olarak yorumlanır. Bu anahtar yoksa ayarlanmaz Property .
Value isteğe bağlı. Alınacak kayıt defteri değerinin adı. Varsayılan değer, varsayılan değerin metnini döndürmektir. Value bir Dize olmalıdır.
FileName isteğe bağlı. Dosyanın adı. Belirtilirse, kayıt defteri anahtarından alınan değerin bir dizin yolu olduğu varsayılır ve bu ad buna eklenir. Belirtilmezse, kayıt defterinden döndürülen değerin bir dosyanın tam yolu olduğu varsayılır.
SearchDepth isteğe bağlı. Adlandırılmış dosya için alt klasörlerde arama derinliği. Arama derinlik önceliklidir. Varsayılan değer 0'dır ve bu da aramayı kayıt defteri anahtarının değeri tarafından belirtilen en üst düzey klasörle kısıtlar.

Açıklamalar

Altındaki InstallChecks öğeler çalıştırılacak testleri tanımlasa da, bunları yürütmez. Testleri yürütmek için öğesinin altında Commands öğeler oluşturmanız Command gerekir.

Örnek

Aşağıdaki kod örneği, .NET Framework için ürün dosyasında kullanıldığı için öğesini gösterir InstallChecks .

<InstallChecks>
    <ExternalCheck Property="DotNetInstalled" PackageFile="dotnetchk.exe" />
    <RegistryCheck Property="IEVersion" Key="HKLM\Software\Microsoft\Internet Explorer" Value="Version" />
</InstallChecks>

Installconditions

Değerlendirildiğinde InstallChecks , özellikler üretir. Ardından özellikleri tarafından InstallConditions bir paketin yüklenmesi, atlanıp atlanmaması veya başarısız olması gerektiğini belirlemek için kullanılır. Aşağıdaki tabloda:InstallConditions

Koşul Açıklama
FailIf Herhangi bir FailIf koşul true olarak değerlendirilirse paket başarısız olur. Koşulların geri kalanı değerlendirilmez.
BypassIf Herhangi bir BypassIf koşul true olarak değerlendirilirse paket atlanır. Koşulların geri kalanı değerlendirilmez.

Önceden tanımlanmış özellikler

Aşağıdaki tabloda ve FailIf öğeleri listelenmiştirBypassIf:

Özellik Notlar Olası Değerler
Version9X Windows 9X işletim sisteminin sürüm numarası. 4.10 = Windows 98
VersionNT Windows işletim sisteminin sürüm numarası. Major.Minor.ServicePack
VersionNT64 64 bit Windows işletim sisteminin sürüm numarası. Major.Minor.ServicePack.
VersionMsi Windows Installer hizmetinin sürüm numarası. 2.0 = Windows Installer 2.0
AdminUser Bir kullanıcının Windows NT tabanlı bir işletim sisteminde yönetici ayrıcalıklarına sahip olup olmadığını belirtir. 0 = yönetici ayrıcalıkları yok

1 = yönetici ayrıcalıkları

Örneğin, Windows 8 çalıştıran bir bilgisayara yüklemeyi engellemek için aşağıdaki gibi bir kod kullanın:

    <!-- Block install on Windows 8 -->
    <FailIf Property="VersionNT64" Compare="VersionLessThan" Value="6.2" String="InvalidPlatform"/>

Bir FailIf veya BypassIf koşulunun karşılayıp karşılanmadığını yük denetimlerini çalıştırmayı atlamak için BeforeInstallChecks özniteliğini kullanın. Örneğin:

    <!-- Block install and do not evaluate install checks if user does not have admin privileges -->
    <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired" BeforeInstallChecks="true"/>

Not

BeforeInstallChecks Özniteliği Visual Studio 2019 Güncelleştirme 9 sürümünden itibaren desteklenir.

Ayrıca bkz.