Wix benutzerdefinierte Benutzeroberfläche für die Installation der SQL-Datenbank

Dies ist mein erstes Wix-Projekt. Ich habe wix 3.6 rc heruntergeladen. Mein Installationsprojekt umfasst 2 wcf- und 1 silverlight-Projekte. Mit der Standard-Wix-Benutzeroberfläche funktioniert alles einwandfrei. Aber jetzt muss ich SQL-Datenbank hinzufügen. Es funktioniert gut mit Standardwerten wie folgt:

                  <Component Id='SqlComponent' Guid='8B72C159-1477-4A58-AFAE-E94D756BFFA6'>
                    <CreateFolder/>
                    <sql:SqlDatabase Id='SqlDatabase' Database='master' Server='.'
                      CreateOnInstall='yes' DropOnUninstall='no' ContinueOnError='yes'>
                      <sql:SqlScript Id='CreateTable' BinaryKey='CreateTable' ExecuteOnInstall='yes' />
                      <sql:SqlScript Id='CreateTable1' BinaryKey='CreateTable1' ExecuteOnInstall='yes' />
                    </sql:SqlDatabase>
                  </Component>

Ich muss jedoch eine Benutzeroberfläche für den SQL-Datenbankpfad, den Datenbanknamen, den Benutzernamen und das Kennwort bereitstellen. Wenn Benutzer und Kennwort nicht angegeben sind, verwenden Sie den Windows-Benutzer.

Um zu sehen, wie man eine benutzerdefinierte Benutzeroberfläche hinzufügt, habe ich Folgendes versucht: Die benutzerdefinierte Benutzeroberfläche wird jedoch sofort angezeigt. Aber ich möchte, dass es nur speziell für die SQL-Datenbankinstallation angezeigt wird.

<Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes">
  <Text>Ready to Install</Text>
</Control>

<Control Id="Install" Type="PushButton" X="304" Y="243" Width="56" Height="17"
    Default="yes" Text="Install">
  <Publish Event="EndDialog" Value="Return" />
</Control>

Sobald ich die benutzerdefinierte Benutzeroberfläche genau dort anzeigen kann, wo ich sie haben möchte, muss ich in der Lage sein, Benutzereingaben für den Datenbankpfad, den Namen, den Benutzer und das Kennwort abzurufen und diese Informationen an das Skript zu übergeben. Ich bin mir auch nicht sicher, wie ich das machen soll.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage