如何用Delphi编写一个查询应用程序已存在实例的超级复杂长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计358个文字,预计阅读时间需要2分钟。
在Delphi中,若要重写一个VB6应用程序,并确保只运行一个实例,可以使用以下代码:
delphivar FInstance: THandle;begin FInstance :=FindWindow('YourAppClassName', 'YourAppTitle'); if FInstance=0 then begin // 应用程序未运行,正常启动 Application.Run; end else begin // 应用程序已运行,发送消息 PostMessage(FInstance, WM_SHOWWINDOW, 0, 0); end;end.
这里,你需要将 `'YourAppClassName'` 和 `'YourAppTitle'` 替换为你的应用程序的实际类名和。这样,当尝试启动第二个实例时,它会尝试将焦点切换到已运行的实例上。
本文共计358个文字,预计阅读时间需要2分钟。
在Delphi中,若要重写一个VB6应用程序,并确保只运行一个实例,可以使用以下代码:
delphivar FInstance: THandle;begin FInstance :=FindWindow('YourAppClassName', 'YourAppTitle'); if FInstance=0 then begin // 应用程序未运行,正常启动 Application.Run; end else begin // 应用程序已运行,发送消息 PostMessage(FInstance, WM_SHOWWINDOW, 0, 0); end;end.
这里,你需要将 `'YourAppClassName'` 和 `'YourAppTitle'` 替换为你的应用程序的实际类名和。这样,当尝试启动第二个实例时,它会尝试将焦点切换到已运行的实例上。

