我有C#WinForm .NET 4.5应用程序。我设置项目 - >属性 - >发布 - >选项 - >文件关联。这部分似乎工作,因为它设置我选择的图标,如果我双击自定义扩展名的文件(在这种情况下* .psi)它打开我的应用程序。但我很难获得双击的文件名。不知怎的,我的静态void Main(string [] args)args总是空的。 我使用ClickOnce部署方法。
任何人都可以帮助我使用我的应用程序打开自定义文件。
static void Main(string[] args)
{
if(args.Length > 0)
{
MessageBox.Show(args[0]);
}else {
MessageBox.Show("args is empty!");
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
DevExpress.Skins.SkinManager.EnableFormSkins();
UserLookAndFeel.Default.SetSkinStyle(Properties.Settings.Default.ActiveSkinName);
Application.Run(new MainForm(args));
}
答案 0 :(得分:2)
找到解决方案here.
当您使用ClickOnce发布应用程序,然后通过双击关联文件启动它时,该文件的路径实际存储在此处:
<强> AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData [0] 强>
请在此处查看MSDN的文档:
http://msdn.microsoft.com/en-us/library/system.runtime.hosting.activationarguments.aspx
另外还有一个关于向“已发布”项目添加文件关联的教程: