我有一个用 foxpro (~shudder~) 编写的程序,我继承了它。
问题是,它有一些 COM 控件。当您启动 2 个副本时,第二个副本将引发错误。所以我想,这可以被清理以将活动副本带到前面,只允许一个实例。
这很好,但程序需要一个命令行参数,允许它以不同的模式运行。您只能在每种模式下运行一个副本,例如
1)
"program /bos"
"program /pos" = OK
2)
"program /pos"
"program /pos" = NOT OK
我想要的是这个
"program /pos"
"program /pos" - Bring currently running pos instance to the front.
"program /bos" - start a BOS instance.
"program /bos" - bring the bos instance to the front.
我希望这是有道理的。确定程序的运行实例是处于 pos 模式还是 bos 模式是一种优雅的方法,这样我就可以确定将哪个进程带到前面或是否在请求的模式下启动一个新副本。
我在这里不一定需要 foxpro 代码 - 尽管那会很好。这个概念是我所追求的,关于实现它的 Windows API 函数的一些提示也会有所帮助。例如,您能确定正在运行的进程的命令行选项吗?