2012-03-22 2 views
-1

Я создаю установщик с использованием WIX. Требование здесь заключается в том, что, когда пользователь нажимает на следующую кнопку в диалоговом окне лицензионного соглашения, я хочу проверить доступ в Интернет пользователя. Если он меньше 1 Мбит/с, я должен показать пользователю сообщение, что «скорость интернета меньше минимальной, требуемой приложением. Вы все еще хотите продолжить установку?» Это сообщение содержит две кнопки «Да» и «Нет». Если пользователь нажмет «Да», я продолжу установку. При щелчке «Нет» установка отменяет. Я думаю, что это невозможно или может быть довольно сложно сделать это с помощью WIX. Так подумал о написании приложения C#, которое проверит скорость интернета и покажет диалог пользователю. Я хочу запустить эту утилиту для запуска в пользовательской последовательности. Затем запишите, был ли пользователь нажат «Да» или «Нет». Если пользователь нажимает «Да», я продолжаю установку, иначе установка прерывается. Примечание. Когда пользователь нажимает кнопку «Да» или «Нет», приложение C# закрывается. Как я могу: 1. Внедрить приложение C# в msi 2. Запустить его в UI Sequence 3. Получить результат действия пользователя и действовать соответствующим образом.Предупреждать пользователя, если скорость интернета медленная

Пожалуйста, помогите, это срочно.

+0

Этот вопрос кажется слишком широким. –

ответ

4

Во-первых, я задаю вопрос о том, как это сделать в установщике. Скорость интернета сильно изменена, и пользователь просто нажимает «Да» и продолжает действовать. Любая проверка состояния системы должна действительно находиться внутри вашего приложения.

Но если вы действительно хотите иметь управляемое пользовательское действие в своем установщике, которое может установить свойство, то вы хотите проверить Foundation Tools.

WiX and DTF: Introduction

Deployment Tools Foundation (DTF) Managed Custom Actions

Как долго он будет принимать для вашего кода, чтобы определить скорость интернета? Если это можно сделать через несколько секунд, вы можете рассмотреть возможность планирования пользовательских действий между CostInitialize и InstallFinalize. CA установит свойство, а затем вы можете использовать это свойство в своем пользовательском интерфейсе, чтобы решить, нужно ли показывать диалоговое окно предупреждения, которое вы создаете, или нет.

Опять же, я должен предположить, что это не очень хорошая идея.

Смежные вопросы