<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 AssemblyCheck
tanı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 ExternalCheck
için adlandırılmış dış programı ayrı bir işlemde yürütür ve çıkış kodunu tarafından Property
belirtilen ö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 FileCheck
iç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 MsiProductCheck
iç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 RegistryCheck
iç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 RegistryFileCheck
iç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.