我有一个应用程序,虽然我不同意它,但我必须在应用程序第一次被激活时添加一个检查以验证是否已安装所需的程序集,如果不是,我需要使用消息框正常退出。我有检查这个的代码,它在验证那些程序集存在时工作正常,但是当它们不存在时,应用程序在我的代码运行之前崩溃。我可以在哪里放这张支票以便它有效?
protected override void OnStartup(StartupEventArgs e) {
bool runningDotNet45OrNewer = CheckForInstalledDependencies.IsNet45OrNewer();
bool slimDxInstalled = CheckForInstalledDependencies.IsSlimDxInstalled();
.... If both are true continue with startup
.... If either are false show message and call System.Windows.Application.Current.Shutdown();
}
答案 0 :(得分:1)
如果您的应用程序依赖于这些程序集,则无法启动它然后检查。这根本不可能。
您需要做的是创建一个"启动器"没有依赖关系的应用程序。该启动器只是检查依赖关系,如果找到它们,则启动真实应用程序,如果不是,则启动用户。