问题标签 [single-instance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4842 浏览

.net - 使用多个文件作为资源管理器的参数打开程序一次

我有一个程序可以使用资源管理器中的右键菜单打开一个文件。但是,如果我选择多个文件,然后右键单击并使用我的程序打开,那么它会打开我的程序的多个实例,而不是仅仅将多个文件作为参数传递给单个实例。该程序是用 vb.net 编写的,但不是 windows 窗体,它只是一个模块,所以我可以在 Visual Studio 的属性中勾选 Single instance 选项。

那么如何在单个实例中从资源管理器上下文菜单中打开多个文件。

0 投票
2 回答
9822 浏览

c# - 如果控制台应用程序已经在运行,如何将参数传递给它?

我在 Windows Mobile 中使用控制台应用程序来处理传入消息拦截。在同一个控制台应用程序中,我接受基于参数的参数(字符串 args []),注册消息拦截器。

InterceptorType 是一个枚举

我把它做成了一个控制台应用程序,因为我希望它继续在后台运行并拦截传入的消息。

这是第一次正常工作。但问题是我必须不断调用addInterception方法来添加后续的拦截规则。这使得控制台应用程序在我每次添加规则时一次又一次地启动。我如何使它只运行一次并添加更多消息拦截器规则?

0 投票
4 回答
1005 浏览

java - 将 Java Applet 限制为仅一个实例

我一直在使用 Stackoverflow 来寻找我的编程问题的解决方案,但是对于当前的问题,我还没有找到有用的解决方案。所以我加入了。

将 Java 小程序限制为仅一个实例是一个很好的解决方案。我正在使用 php 为最终用户提供小程序,所以这是一个选择。

但如果我可以通过 Applet 本身限制 Java Applet 的执行,我会更感兴趣。我对Java很陌生,所以我真的不知道从哪里开始寻找这样的结构。

任何建议,将不胜感激。

作为旁注,“ javascript to launch only ONE window for a Java applet with a given URL ”将是一种解决方案。虽然我将小程序嵌入到我正在构建的应用程序中,但我并不真正热衷于为小程序提供服务的弹出窗口。

此致, AltWouss

编辑:
澄清实例限制。我希望每台机器只加载一个小程序。

0 投票
6 回答
131 浏览

java - 使用空文件拥有一个应用程序实例

可能还有其他方法可以做到这一点,但我想使用一个空文件让应用程序的一个实例在给定时间运行。这将通过在启动应用程序时创建文件并让其他应用程序实例在检测到文件后立即退出来完成。

这种方法的问题在于,如果应用程序意外停止并且 ShutDownhook 被证明不可靠,文件可能会保留。

您将如何按预期完成这项工作?

0 投票
2 回答
15092 浏览

android - startActivityForResult 无法与 launchMode singleInstance 一起正常工作

我希望我的应用程序的活动堆栈上的活动只有一个实例。我有几个屏幕是 ListActivities,当 ListActivity 的另一个实例被更改(添加到、编辑、删除等)时,我不想经历更新 ListActivity 的前一个实例中的列表的痛苦和痛苦(或者有没有简单的方法来做到这一点?)。

注意:我读过 singleTop 将完成此操作(尽管如果您点击后退按钮它会破坏 Activity),但它不起作用。我有一个菜单,如果我转到我的收件箱屏幕,然后我转到我的快速列表屏幕,然后我再次转到我的收件箱屏幕,它会创建一个新的收件箱活动。

现在,在我的 ListActivities 上,我将 launchMode 设置为 singleInstance。问题是:如果我使用 startActivityForResult 启动另一个 Activity,onActivityResult 处理程序会立即触发(在创建新 Activity 之前)。当我在下一个屏幕上执行必要的操作以返回结果时,onActivityResult 处理程序不会触发。

到底是怎么回事?

这是我触发新活动的方式:

这是我返回结果的方式:

这是我的 onActivityResult 处理程序:

0 投票
1 回答
219 浏览

design-patterns - 具有 WF 4 和 AppFabric 的集群中的单个实例

我正在尝试使用 WF4 和 AppFabric 执行单实例工作流。我只想要一个在集群中运行的工作流实例。

我尝试了一种 biztalk 风格:创建实例的方法 (CallService()),以及未检查 cancreateinstance 的其他接收活动 (CallService()) 中的相同方法。(我想我可以通过 xpath 将它与肥皂消息中的动作关联起来,但让我们忘记在这一步进行关联)。

我的问题是 WF 总是创建实例并且在第二次调用中不相关。

你知道怎么解决吗?我想优先考虑创建实例的相关性。还有其他方法吗?

提前致谢。

0 投票
3 回答
1721 浏览

java - 在java中为系统托盘创建单个实例

我正在使用用 java 创建的桌面应用程序。我们正在为应用程序的 Windows 版本(用于在 Windows 操作系统上运行)工作。当我们运行我们的应用程序时,它使用 systemtray 在桌面上创建一个托盘图标

我正在创建系统托盘的单个实例,该实例是在应用程序的主类中创建的。

我正在为我的应用程序创建 exe。我的问题是当我运行我的应用程序的 exe 文件时,它每次都会创建托盘图标。

我希望在我的应用程序中只有一个托盘图标出现在桌面上并作为服务运行。只有在卸载应用程序时,该图标才会被删除。它应该在后台作为服务运行。

我没有任何方法可以帮助我将应用程序作为服务运行,并且应该只有一个实例在后台运行。

我想通过将托盘图标创建为服务来运行我的应用程序,并且应该存在单个实例。请在这个问题上指导我。

提前感谢您提出的所有宝贵建议。

0 投票
7 回答
6082 浏览

c# - 如何实现每个机器应用程序的单个实例?

我必须限制我的 .net 4 WPF 应用程序,以便每台机器只能运行一次。请注意,我说的是每台机器,而不是每个会话。
到目前为止,我使用简单的互斥锁实现了单实例应用程序,但不幸的是,每个会话都有这样的互斥锁。

有没有办法创建一个机器范围的互斥锁,或者有没有其他解决方案可以为每个机器应用程序实现一个实例?

0 投票
0 回答
444 浏览

wcf - 具有会话 ID 的 WCF 单例

我有一个映射到 1 个硬件设备(打印机)的 WCF 服务。我想通过客户端锁定/解锁打印机。

有没有办法制作该服务的单个实例并启用会话?所以我可以获得当前用户的会话ID?例如 OperationContext.Current.SessionID ?(将其保存在私有字段中,以便我可以同步对硬件设备的访问)

谢谢!

0 投票
2 回答
4320 浏览

vim - 使用带有 --remote-silent 的单个 vim 实例

我一直是控制台 vim 用户,但最近我尝试使用 gvim。我进行了一些设置,使我的控制台习惯不会受到影响,例如在当前目录中打开一个 urxvt 终端,使用 .

然而,用我的上网本打开多个 gvim 和终端是很可怕的,很快我的 vim 空间就减少到一两厘米。充其量,窗口宽度减半,无法垂直分割屏幕(平铺 wm)。

我通过别名 vim 解决了这个问题,gvim --remote-silent它工作了几天,但今天我需要使用 -c '' 并意识到后面有任何开关 --remote-silent 将这些开关作为文件打开。这样做gvim --remote-silent --foo bar会打开两个文件,--foo 和 bar。

我为 设置了一个新别名alias vim=gvim,但恐怕这会让我再次成为控制台 vim 用户,比我想象的要早。

所以问题是,什么是继续使用 gvim 的首选方式,以最小的努力(设置系统可能很费力),以便我仍然可以继续使用 vim 的全部功能。该解决方案不需要使用远程 vim,它应该只是最小化 gvim 窗口。