【问题标题】:What is the best .net alternative to dde for file associations?用于文件关联的 dde ​​的最佳 .net 替代方案是什么?
【发布时间】:2009-08-13 15:32:04
【问题描述】:

我有一个 MDI Windows 窗体应用程序 (.net 2008),它允许用户将各种文件类型与应用程序相关联。我目前使用类似这样的注册表项来执行此操作,这会导致应用程序通过命令行加载和访问文件名:

Registry.SetValue(appKey & "\shell\open\command", "", """" & _
  System.Windows.Forms.Application.ExecutablePath & """ ""%1""")

在应用程序的 pre-.net 版本中,我使用了 DDE(注册表中的 ddeexec)。如果在 Windows 资源管理器中双击文件时正在执行应用程序实例,它将打开该文件而不启动应用程序的新实例。

现在 DDE 已被 Microsoft 弃用,对于正在执行的 MDI 应用程序在资源管理器中双击文件时打开附加文件的最佳方法是 .net,而不是启动应用程序的新实例?

【问题讨论】:

    标签: .net vb.net registry file-association


    【解决方案1】:

    理想情况下,您可以使用常规文件关联技术 (doc) 以及某种形式的进程间通信来组织您的程序如何处理后续启动。

    例如,当您的程序启动时,检查另一个实例是否已经打开。如果是这样,将任何参数数据传递给现有实例,然后退出。然后现有实例会适当地处理数据。

    这里 (link) 是一个很好的 SO 答案,可以帮助您入门。

    【讨论】:

      猜你喜欢
      • 2017-06-11
      • 2021-01-17
      • 1970-01-01
      • 2022-11-23
      • 1970-01-01
      • 2010-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多