single-instance相关内容
因此,我可以在 Windows 上强制执行我的应用程序的单个实例,如下所示. [STAThread]类方法 Program.Main(args: 字符串数组);开始var mutex := new Mutex(true, "{8F6F0AC4-B9A1-45fd-A8CF-72F04E6BDE8F}");如果 mutex.WaitOne(Timespan.Zero, true) 那么开始Appl
..
我有一个应用程序需要是跨 Windows PC 上所有用户会话的单实例应用程序.到目前为止,我的研究主要集中在使用互斥锁来完成此任务,但我遇到了一个我不确定是否真的是问题的问题,我认为这确实是一个最佳实践问题. 首先是代码: Private Const AppVer = "Global\UNIQUENAME" ' 这不是我使用的,但名称是唯一的公共子主()调暗互斥值只要mutexValue
..
我从 Maya 中启动 UI.如果 UI 尚未关闭,再次运行 UI 将完全冻结 Maya(出现错误“事件循环已在运行") 在重新运行脚本之前手动关闭 UI 将防止它冻结.但我想这不太实用. 有没有办法检测我尝试运行的 UI 是否已经存在?并可能强制关闭它? 解决方案 这是一个非常简单的 PyQt5 解决方案,使用 QLockFile: from PyQt5 import Qt
..
有没有办法让 gVim 只运行一个实例,这样当用它打开一个新文件时,它会自动在当前运行的实例的新选项卡中打开? 我知道您可以通过传递 --remote-tab-silent 来做到这一点,但我想配置 gvim,使其成为默认行为.即我想输入 gvim 文件名 并让它像我传递了 --remote-tab-silent 选项一样. gVim 7.2 编辑 我在 windows (
..
我有一个 Activity,它基本上是我的主要 Activity,它的启动模式是单实例.但由于 singleInstance,onActivityResult() 回调不会触发.如果我将清单文件中的启动模式更改为任何其他模式,它就可以正常工作. 你能解释为什么这个回调不起作用吗? 解决方案 我认为问题在于 singleInstance 不允许被调用者活动与调用者存在于同一任务中,因此
..
我正在使用此代码来防止我的程序的第二个实例同时运行,是否安全? Mutex appSingleton = new System.Threading.Mutex(false, "MyAppSingleInstnceMutx");如果(appSingleton.WaitOne(0,假)){Application.EnableVisualStyles();Application.SetCompatib
..
我正在 WxPython 中开发一个 GUI 应用程序,但我不确定如何确保在任何给定时间在机器上只运行我的应用程序的一个副本.由于应用程序的性质,多次运行没有任何意义,并且会很快失败.在 Win32 下,我可以简单地创建一个命名的互斥锁并在启动时检查它.不幸的是,我不知道 Linux 中有任何工具可以做到这一点. 我正在寻找可以在应用程序意外崩溃时自动释放的东西.我不想让我的用户因为我崩溃而
..
为了创建单实例应用程序,以便一次只允许运行一个进程,您有什么建议?文件锁,互斥锁还是什么? 解决方案 一个好方法是: #include #include int pid_file = open("/var/run/whatever.pid", O_CREAT | O_RDWR, 0666);int rc = flock(pid_file, LOCK_EX | LOCK_NB);如果(RC
..
有时我会看到许多应用程序,例如 msn、windows media player 等,它们都是单实例应用程序(当用户在应用程序运行时执行时,不会创建新的应用程序实例). 在 C# 中,我为此使用了 Mutex 类,但我不知道如何在 Java 中执行此操作. 解决方案 如果我相信 文章,作者: 让第一个实例尝试在本地主机接口上打开一个监听套接字.如果它能够打开套接字,则假定这是要
..
最近我决定将我的一个用 C# 编写的 WPF Windows 桌面应用程序迁移到 .NET Framework 4.5 到最新的 .NET Core 3.1.一切都很好,直到我不得不添加对单实例应用程序的支持,同时能够将任何参数从第二个实例传递到第一个正在运行的实例.我之前为单实例应用程序实现的 WPF 使用的是 System.Runtime.Remoting,但在 .NET Core 中不可用.
..
有时我会看到许多应用程序,例如 msn、windows media player 等,它们都是单实例应用程序(当用户在应用程序运行时执行时,不会创建新的应用程序实例). 在 C# 中,我为此使用了 Mutex 类,但我不知道如何在 Java 中执行此操作. 解决方案 如果我相信 文章,作者: 让第一个实例尝试在本地主机接口上打开一个监听套接字.如果它能够打开套接字,则假定这是要
..
我制作了单实例应用程序,但我的问题是,我不知道如何获取第一个打开的 FormMain 实例并更新表单 TextBox!你能帮我吗? static void Main(string[] args){布尔结果;Mutex mutex = new System.Threading.Mutex(true, “unique_name", out result);如果(!结果){**/*调用打开的表单实例并
..
我正在Python 2.7上执行此项目,并且尝试转换此函数以返回日志记录对象.我试图确保可以通过导入它而无需实际创建新实例的情况下通过不同的python模块利用同一对象实例?例如,如果我实际上导入了最初创建实例的模块,则每次导入它时都会创建一个新实例.但是我想在所有不同的地方使用相同的原始实例模块,这是我第一次运行该模块时创建的,因为由于多个实例,在日志文件中打印了多行.这就是为什么需要Pytho
..
有很多解决方案可以限制应用程序运行两次.通过进程名称搜索,使用命名的互斥锁等.但是,如果我想将应用程序限制在shell会话中,那么所有这些方法都将无效. 用户在Windows上的登录会话和shell可能不止一个(对吗?)?如果是这样,我希望能够在每个Shell会话中运行我的应用程序的一个实例,但只允许一个实例. 是否有一种方法可以获取可用于互斥体名称的shell标识符? 解决方案
..
我有一个要执行的shell文件,最后,我可以按 ENTER 并再次运行它.问题是,每次按 ENTER 都会创建一个新进程,经过20或30回合后,我会得到30个PID,这些PID最终将使我的Linux混乱.因此,我的问题是:如何使脚本始终在同一进程中运行,而不是每次按 ENTER 时都创建一个新脚本? 代码: #!/bin/bash echo "Doing my stuff here!
..
我有一个WPF应用程序,可以使用一些可选的命令行参数. 此应用程序也是单实例应用程序(如果已经打开实例,则使用互斥锁关闭任何实例). 我想做的是,如果某些东西试图用一些cmd行的args打开应用程序,则该应用程序将执行与这些操作相同的操作(在我的应用程序中,它将基于cmd打开不同的对话框行). 最简单的方法是什么? 在psedo代码中,这就是我正在寻找的 protec
..
可能重复: 创建单个实例的正确方法是什么申请吗? 如何反复定义我的应用程序,将其定义为只打开一次该应用程序? 解决方案 我一直在应用程序的入口点执行此操作: bool onlyInstance = false; Mutex m = new Mutex(true, "MyUniqueMutextName", out onlyInstance); if (!onlyInstan
..
我已经用Delphi重写了VB6应用程序.它应该只运行一个实例.如何用最少的代码做到这一点? 在VB6中,我们只需要使用一行代码 > 如果App.PrevInstance然后 '采取一些行动 如果结束 在进行泳镜检查时,我确实找到了解决方案,但是它的长度非常长,我们必须弄乱.drp文件. 我不想那样做. 我想要更简单的东西. 解决方案 请注意,在许多情况下,用
..
我将要创建一个简单的android应用程序,以在单击按钮时播放声音,但是我难以理解单例设计模式,这对本应用程序非常有帮助.我想要达到的目的是要有多个活动,并且仅共享一个MediaPlayer实例,以便当用户按下按钮声音时播放,并且如果他在相同或不同活动上按下相同或另一个按钮,声音将停止. 这是我的代码,但是在两次按下按钮之后,创建了另一个MediaPlayer实例,您可以在此处同时播放相同的
..
很抱歉,我的标题可能会让您感到困惑(只是我不知道应该使用哪些词).我的问题是我不想允许用户多次打开我的应用程序.请帮忙.预先谢谢你. 解决方案 使用“制作单实例应用程序"标志;在解决方案资源管理器中,右键单击该项目,然后选择属性.有关更多详细信息,请参见此问题. MSDN文档此处. 屏幕截图:
..