Как остановить загрузку приложения .NET, если определенные критерии не выполнены - PullRequest
1 голос
/ 08 февраля 2010

Мне нужно выполнить определенные критерии, перед загрузкой этого приложения на диске c должна быть определенная папка. Как в процессе загрузки я могу остановить / закрыть приложение.

Я уже выяснил, существует ли папка. В старых проектах VB вы бы просто использовали «Unload Me», но этого нет в C #. Я попробовал Application.Exit (), но это не работает в этих условиях, и приложение все еще загружается, как мне его остановить?

Ответы [ 3 ]

6 голосов
/ 08 февраля 2010

Открыть вверх Program.cs. Там вы найдете Main() метод.

Там поместите что-то вроде:

if (FolderDoesNotExist())
    return ERROR_FOLDER_NOT_EXIST;

(при необходимости заменяя эти символические имена другими словами).

2 голосов
/ 08 февраля 2010

Я бы создал функцию инициализации, которая будет первым элементом, вызываемым из Main (). В зависимости от вывода и продолжительности инициализации вы можете даже использовать всплывающее окно, чтобы проинформировать пользователя о прогрессе. После завершения инициализации вы можете решить, запускать приложение или нет.

0 голосов
/ 08 февраля 2010

// В основной инициализации главной формы (например, в файле XXX.Designer.cs InitializeComponent ())

this.Load + = новый System.EventHandler (this.CheckProcesses);

// Метод CheckProcess

private void CheckProcesses (отправитель объекта, EventArgs e)

{ try {if (SomethingIsWrongWithThatFolder ()) this.Close (); } ловить { } }

// Это остановит процесс вашего приложения до того, как пользовательский интерфейс действительно загрузится. Итак, ваш пользователь вообще ничего не видит

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...