【问题标题】:How to start Windows 7 application "recent session" programmatically?如何以编程方式启动 Windows 7 应用程序“最近的会话”?
【发布时间】:2013-08-17 09:25:59
【问题描述】:

这里我指的不是仅仅启动一个 Windows 应用程序。我想要的是利用“最近的会话”的 Windows 功能,例如在这里可以看到:

当我知道会话的名称时,我想知道如何以编程方式启动这些最近的会话。

到目前为止,我自己的搜索只导致了大量关于启动应用程序的文章 - 但没有具体描述“最近的会话”机制。

更新:

似乎我还不够清楚。我知道从我的 C# 应用程序 (WinForms) 中,我可以使用以下方式启动外部进程:

using System.Diagnostics;
...
Process process = new Process();
// Configure the process using the StartInfo properties.
process.StartInfo.FileName = "process.exe";
process.Start();

我的问题实际上是:有什么方法 - 通过指定 process.StartInfo 的任何选项或通过使用任何其他可能的方式来启动外部进程 - 不仅启动一个外部应用程序,而且启动这个外部的“最近会话”如果我已经有这个“最近的会话”名称,则应用程序。

【问题讨论】:

  • 我认为您应该编辑您的问题并专注于提出问题“我如何以编程方式查看某些程序在开始菜单中提供的扩展右键菜单的内容”正如您所说,如果您新的命令行参数正确,您已经知道如何启动程序,您只需要确定右键单击菜单中的数据存储在哪里(该列表中的所有这些项目都是使用一组特殊的命令行参数)。

标签: c# winforms windows-7


【解决方案1】:

我不知道这是否应该是设计使然,但这绝对是与早期版本不同的行为,而且非常烦人(至少对我而言)。

首先,我不经常使用选项卡式会话功能。我更喜欢每个会话有一个单独的窗口(可通过 Win7 任务栏选择)。

在 5.2 之前的版本中,从跳转列表打开固定或最近的会话将提示输入密码并在新窗口中打开会话。

在 5.2 测试版中,从跳转列表打开固定或最近的会话将提示输入密码并在现有 WinSCP 窗口中打开会话。然而,更烦人的是焦点不会切换到窗口,所以如果你在其他窗口后面有一个现有的 WinSCP 窗口,它将提示输入密码,而没有任何明显的指示需要用户干预(即你必须单击以显示现有的 WinSCP 窗口,然后您将看到提示等待)。

真正好的选择是: 1) 完全禁用选项卡式会话 2) 在新窗口中从跳转列表中打开新会话

至少需要关注重用的窗口(即使是密码提示),但我也希望 WinSCP 仍能迎合那些喜欢单独窗口的人。谢谢。

【讨论】:

  • 我可能不够具体,也没有强调“以编程方式”这个词。更新了我的问题,使其更准确。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-05
  • 2011-03-27
  • 2013-07-30
  • 2015-04-27
  • 1970-01-01
相关资源
最近更新 更多