Πώς μπορείτε να ελέγχετε μέσω προγραμματισμού για την παρουσία ενός προϊόντος που βασίζεται σε Windows Installer, χρησιμοποιώντας τον κωδικό προϊόντος του


ΕΙΣΑΓΩΓΗ


Ο Windows Installer παρέχει API που επιτρέπουν σε ένα χρήστη να υποβάλλει ερώτημα στη βάση δεδομένων του Windows Installer για την παρουσία ενός συγκεκριμένου προϊόντος. Κάθε προϊόν αναγνωρίζεται με μοναδικό τρόπο από τον κωδικό προϊόντος του, ο οποίος είναι ένα GUID. Αυτό το άρθρο παρέχει δείγματα κώδικα που δείχνουν τον τρόπο με τον οποίο μπορείτε να ελέγχετε μέσω προγραμματισμού για την παρουσία ενός προϊόντος που βασίζεται σε Windows Installer, χρησιμοποιώντας τον κωδικό προϊόντος του.

Περισσότερες πληροφορίες


Πρόσκληση του API από το Visual C++

Ακολουθεί ένα παράδειγμα του τρόπου με τον οποίο μπορείτε να καλείτε τη μέθοδο MsiGetProductInfoExW () στο Visual C++ για να εντοπίσετε την παρουσία ενός συγκεκριμένου προϊόντος. Το προϊόν καθορίζεται από τον μοναδικό κωδικό προϊόντος GUID.
TCHAR szVersion[20];DWORD cchVersion = 20;BOOL fInstalled = (ERROR_SUCCESS == MsiGetProductInfoEx (TEXT("{ProductCode}"), NULL, MSIINSTALLCONTEXT_MACHINE, INSTALLPROPERTY_VERSIONSTRING, szVersion, &cchVersion));
Σε αυτό το τμήμα παραδείγματος κώδικα, η μεταβλητή Boolean fInstalled θα περιέχει μια τιμή TRUE ή FALSE, ανάλογα με το αν το προϊόν που έχει καθοριστεί είναι εγκατεστημένο ή δεν έχει εγκατασταθεί.

Πρόσκληση του API από τη VBScript

Ακολουθεί ένα παράδειγμα του τρόπου με τον οποίο μπορείτε να καλείτε τη μέθοδο ProductInfo () στο αντικείμενο WindowsInstaller. Installer στη δέσμη ενεργειών της Microsoft Visual Basic για να εντοπίσετε την παρουσία ενός συγκεκριμένου προϊόντος. Το προϊόν καθορίζεται από τον μοναδικό κωδικό προϊόντος GUID.
 Dim msi : Set msi = CreateObject("WindowsInstaller.Installer")On Error Resume NextDim version : version = msi.ProductInfo("{ProductCode}", "VersionString")Dim installed : installed = ( Err.Number = 0 )
Σε αυτό το τμήμα παραδείγματος κώδικα, η εγκατεστημένη μεταβλητή θα περιέχει μια τιμή 0 ή 1, ανάλογα με το εάν το προϊόν που έχει καθοριστεί είναι εγκατεστημένο ή δεν έχει εγκατασταθεί.Σημείωση Η ιδιότητα ProductCode που μεταβιβάζεται στις συναρτήσεις και στα δύο παραδείγματα περιλαμβάνει άγκιστρα ({}) μέσα στα εισαγωγικά. Για περισσότερες πληροφορίες σχετικά με το Windows Installer, επισκεφθείτε την ακόλουθη ιστοσελίδα του Microsoft Windows Installer MSDN στο Web:Για περισσότερες πληροφορίες σχετικά με τον τρόπο με τον οποίο μπορείτε να αποκτήσετε την πιο πρόσφατη έκδοση του Windows Installer για τον υπολογιστή σας, επισκεφθείτε την ακόλουθη ιστοσελίδα της Microsoft: Για περισσότερες πληροφορίες, επισκεφθείτε τις ακόλουθες ιστοσελίδες της Microsoft: Σημείωση σχετικά με την ενότητα "ισχύει για"Εκτός από τα προϊόντα που παρατίθενται στην ενότητα "ισχύει για", οι πληροφορίες σε αυτό το άρθρο ισχύουν επίσης για το παρακάτω προϊόν:
  • Windows Installer 4,0