我打算将特定的扩展名关联到自己写的WPF程序,通过双击该类型文件,然后打开该文件,我查了一下MSDN,在App.xaml里面加入
Startup="App_Startup"
然后我的App.xaml.cs是这样写的
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
namespace ChineseChess
{
/// <summary>
/// App.xaml 的交互逻辑
/// </summary>
public partial class App : Application
{
void App_Startup(object sender, StartupEventArgs e)
{
if (e.Args.Length == 1)
{
MessageBox.Show(e.Args[0]);
}
MainWindow mainWindow = new MainWindow();
mainWindow.Show();
}
}
}
运行结果是,直接打开程序没有问题。双击关联扩展名的文件后,弹出的MessageBox可以显示参数文件的地址,但是不会再显示MainWindow主窗口,任务管理器里面也没有应用程序的进程,想必是某种原因直接或者因为异常退出了。
另外在命令行窗口中输入 程序名+文件名参数,可以显示MessageBox,也可以显示主窗口,貌似是关联打开方式的问题。
请问为什么会这样呢?
------解决方案--------------------
我也遇到了这个问题,刚开始学习WPF