我有一个 WPF 应用程序,它使用来自另一个控制台应用程序项目的 API 来执行各种文件操作操作。我还有一个 SharpShell 扩展,为我提供了一个上下文菜单选项,以便在单击控制台应用程序时从它运行一个方法。
我的问题是 SharpShell 扩展无法从我的控制台应用程序运行某些重要方法。我相信这是因为该扩展目前独立于我的表单应用程序运行。
我希望所有文件(在资源管理器中)的上下文菜单仅在 WPF 应用程序运行/最小化到托盘时出现。这样,我希望上下文菜单扩展能够访问它需要从控制台应用程序执行的对象实例和方法。
为了让您更好地了解我的目录结构:
--
控制台项目
- 暴露的 API
表格项目
- 表单 UI 的东西
- 表单 UI 操作
- 使用“公开 API”
SharpShell 扩展类库项目
- 上下文菜单扩展
- 使用“公开的 API”[此处失败]
--
有没有办法将我的上下文菜单扩展“附加”到 WPF 应用程序?有没有办法只通过 WPF 应用程序而不用 SharpShell 来做到这一点?
如果没有,如何在不重新运行 WPF 应用程序可执行文件的情况下从 SharpShell 扩展访问和调用当前运行的 WPF 应用程序中的方法?