Uploaded image for project: 'Qt Installer Framework'
  1. Qt Installer Framework
  2. QTIFW-3026

Unable to set custom UUID for installer on Windows

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 4.5.2
    • General
    • Windows

    Description

      I want to set fixed UUDI for application on Windows during creating of installer using QTIF. I did't found

      In function PackageManagerCorePrivate::registerPath() that is located in /src/libs/installer/packagemanagercore_p.cpp.

      QString PackageManagerCorePrivate::registerPath()
      {
      #ifdef Q_OS_WIN
      QString guid = m_data.value(scProductUUID).toString();
      if (guid.isEmpty())

      { m_data.setValue(scProductUUID, QUuid::createUuid().toString()); guid = m_data.value(scProductUUID).toString(); writeMaintenanceConfigFiles(); // save uuid persistently }

      QString path = QLatin1String("HKEY_CURRENT_USER");
      if (m_data.value(QLatin1String("AllUsers")).toString() == scTrue)
      path = QLatin1String("HKEY_LOCAL_MACHINE");

      return path + QLatin1String("\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall
      ")
      + guid;
      #endif
      return QString();
      }

      This function check "scProductUUID" if it there then put it. But "scProductUUID" can't be provide via config, because it is not added in valid keys list. (Parameter "ProductUUID", exist but not available for input).

      The list of parameter available in "settings.cpp":

      QStringList elementList;
      elementList << scName << scVersion << scTitle << scPublisher << scProductUrl
      << scTargetDir << scAdminTargetDir
      << scInstallerApplicationIcon << scInstallerWindowIcon
      << scLogo << scWatermark << scBanner << scBackground << scPageListPixmap
      << scStartMenuDir << scMaintenanceToolName << scMaintenanceToolIniFile << scMaintenanceToolAlias
      << scRemoveTargetDir << scLocalCacheDir << scPersistentLocalCache
      << scRunProgram << scRunProgramArguments << scRunProgramDescription
      << scDependsOnLocalInstallerBinary
      << scAllowSpaceInPath << scAllowNonAsciiCharacters << scDisableAuthorizationFallback
      << scDisableCommandLineInterface
      << scWizardStyle << scStyleSheet << scTitleColor
      << scWizardDefaultWidth << scWizardDefaultHeight << scWizardMinimumWidth << scWizardMinimumHeight
      << scWizardShowPageList << scProductImages
      << scRepositorySettingsPageVisible << scTargetConfigurationFile
      << scRemoteRepositories << scTranslations << scUrlQueryString << QLatin1String(scControlScript)
      << scCreateLocalRepository << scInstallActionColumnVisible << scSupportsModify << scAllowUnstableComponents
      << scSaveDefaultRepositories << scRepositoryCategories;

      Here "scProductUUID" just missing.

      Since functionality is there, but I can't setup it because of missing value in white list I assume this is a bug.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            installerteam Installer Team
            nollk Igor Shirokov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes