Проблема установки установки (установите флажок в настраиваемом диалоговом окне) - PullRequest
3 голосов
/ 27 июля 2011

Я пытаюсь создать установочную установку для моего приложения VB.net.Мне нужно вставить пользовательское действие во время установки.Поэтому я добавляю диалоговое окно Checkbox в мои настройки.И я добавляю dll в установочную установку, чтобы перехватывать события до установки и после установки.Те, работает отлично.Но я не могу получить доступ к значению моего флажка в этих событиях.Если вы, ребята, можете дать мне подсказку, чтобы продолжить мою работу, я очень благодарен.

Ниже приведено событие «Перед установкой», которое я создал.Я установил несколько сообщений, чтобы убедиться, что мое событие работает правильно.Пока я запускаю настройку, эти сообщения отображаются правильно.

Private Sub Installer_BeforeInstall(ByVal sender As Object, _
                               ByVal e As System.Configuration.Install.InstallEventArgs) Handles MyBase.BeforeInstall
    Dim koFaxPath As String = Nothing
    MsgBox("Installer_BeforeInstall: Starts1")

    Dim contextParameters As StringDictionary
    Dim sb As System.Text.StringBuilder = New System.Text.StringBuilder
    Dim actionDataName As String = String.Empty
    Dim arrayActionData() As String

    contextParameters = Me.Context.Parameters
    For Each actionDataName In Me.Context.Parameters.Keys
        arrayActionData = Me.Context.Parameters(actionDataName).ToString.Split("-")
        MsgBox(actionDataName.ToString)
        MsgBox(arrayActionData(0).ToString)
        MsgBox(Me.Context.Parameters.Item(actionDataName.ToString))
    Next


    Try
    Catch ex As Exception
        'needs to impliment
    End Try

    MsgBox("Installer_BeforeInstall: Ends")
End Sub

Спасибо заранее

Ответы [ 2 ]

3 голосов
/ 27 июля 2011

Я нашел ответ на этот вопрос. Это может быть полезно и для вас. Как только вы добавите свою dll в проект установки, перейдите в свойства dll. Существует свойство с именем CustomActionData. Заполните его следующим образом

/CheckBoxSequenceGenerator="[CheckBoxName]"

Теперь вы можете получить доступ к этому в следующем коде

Context.Parameters("CheckBoxSequenceGenerator")
0 голосов
/ 27 июля 2011

Пожалуйста, убедитесь, что ваш флажок не привязан к кодированию.

...