服务和桌面之间的JclAppInstances

时间:2017-02-28 15:35:23

标签: delphi

我在一个应用程序中使用以下代码,该代码会自动检测它何时运行,无论它是作为服务还是桌面应用程序运行,并且是否适合该情况。

JclAppInst.JclAppInstances('<application descriptive label>').CheckSingleInstance;

代码嵌入到单元底部的初始化块中,该单元包含用于确认服务状态和显示关键桌面信息的代码,因此我知道该单元包含在两种操作模式中。 CheckSingleInstance调用在桌面模式下完美运行,确保只运行一个实例,但似乎无法检测应用程序当前是否作为服务运行。

不幸的是,我无法解决为什么JclAppInstances会受到差异的影响。这两个实例都是从同一个文件夹运行,但是作为不同的用户运行(即服务用户与桌面用户不同),但我的理解是不同的用户应该工作。

是否有人知道是否可以使用JclAppInstances执行此操作,如果可以,我的问题是什么?

1 个答案:

答案 0 :(得分:0)

很明显,JclAppInstances类不支持所需的功能,任何基于使用此Jedi组件的解决方案都应该引用以下StackOverflow应答。

one instance of app per Computer, how?