|
program
Project1;
uses
Forms,
Dialogs,
Unit1 in 'Unit1.pas'{FMain};
{$R *.RES}
begin
Application.Initialize;
Application.Title:='OneInstanceAPP';
If IsTitleExists=0 Then
Begin
Application.CreateForm(TFMain,FMain);
Application.Run;
End Else ShowMessage('Application Already Running !');
End. |
|
unit
Unit1;
interface
uses
Windows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls,ShellApi;
{$R *.DFM}
type
TFMain=class(TForm)
LbMain:TLabel;
LbLink:TLabel;
procedure LbLinkClick(Sender:TObject);
private
public
end;
var
FMain:TFMain;
function IsTitleExists:HWND;
implementation
Function IsTitleExists:HWND;
Var
CNA:Array[0..255]of Char;
ATT:String;
Begin
Result:=0;
ATT:=Application.Title;
Application.Title:='';
Try
GetClassName(Application.Handle,CNA,254);
Result:=FindWindow(CNA,PChar(ATT));
Finally
Application.Title:=ATT;
End;
End;
Procedure TFMain.LbLinkClick(Sender:TObject);
Begin
ShellExecute(Handle,'open',PChar(LbLink.Caption),nil,nil,1);
End;
End. |