<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[My Visual Database — Контроль запуска одного экземпляра программы]]></title>
		<link>https://myvisualdatabase.com/forum/viewtopic.php?id=8711</link>
		<atom:link href="https://myvisualdatabase.com/forum/extern.php?action=feed&amp;tid=8711&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in Контроль запуска одного экземпляра программы.]]></description>
		<lastBuildDate>Fri, 29 Sep 2023 11:38:19 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49069#p49069</link>
			<description><![CDATA[<div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>Это чтоб на панели задач не было открыто много окон при открытых двух формах...</p></blockquote></div><p>Чтобы форма не отображалась на таскбаре, установите её свойство <strong>ShowOnTaskbar = False,</strong> доступно в редакторе.</p><p>Про форму и её свойства: <a href="https://k245.ru/mvdb/formy.html">https://k245.ru/mvdb/formy.html</a></p>]]></description>
			<author><![CDATA[null@example.com (k245)]]></author>
			<pubDate>Fri, 29 Sep 2023 11:38:19 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49069#p49069</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49057#p49057</link>
			<description><![CDATA[<div class="codebox"><pre><code>Это чтоб на панели задач не было открыто много окон при открытых двух формах...</code></pre></div><p><a href="https://myvisualdatabase.com/forum/viewtopic.php?pid=23970#p23970">https://myvisualdatabase.com/forum/view … 970#p23970</a></p>]]></description>
			<author><![CDATA[null@example.com (sparrow)]]></author>
			<pubDate>Fri, 29 Sep 2023 10:35:20 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49057#p49057</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49055#p49055</link>
			<description><![CDATA[<p>Сп. помогло... думал что <strong>OnCloseQuery</strong> должно только в основном теле.</p>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Fri, 29 Sep 2023 10:29:57 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49055#p49055</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49053#p49053</link>
			<description><![CDATA[<p>Это чтоб на панели задач не было открыто много окон при открытых двух формах...</p>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Fri, 29 Sep 2023 10:00:31 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49053#p49053</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49052#p49052</link>
			<description><![CDATA[<p>Перенесите строчку </p><div class="codebox"><pre><code>frmFon.OnCloseQuery := @frmFon_OnCloseQuery;</code></pre></div><p>внутрь обработчика frmFon_OnShow , перед&nbsp; frmMain.Parent := frmFon;</p><br /><p>Кстати, </p><div class="codebox"><pre><code>frmMain.Parent := frmFon;</code></pre></div><p>для чего делаете?</p>]]></description>
			<author><![CDATA[null@example.com (k245)]]></author>
			<pubDate>Fri, 29 Sep 2023 08:57:27 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49052#p49052</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49050#p49050</link>
			<description><![CDATA[<p>А подскажите, как условия сделать приведенных примерах... не понимаю к чему привязываться...<br />А то у меня реализовано<br /></p><div class="codebox"><pre><code>frmFon.OnCloseQuery := @frmFon_OnCloseQuery;</code></pre></div><p>и поэтому постоянно выскакивает подтверждение выхода.<br />А если поставить в теле программы<br /></p><div class="codebox"><pre><code>begin
...
end.</code></pre></div><p>до <strong>OnCloseQuery</strong> , то появляется пустое окно, на которое надо нажать, чтоб оно исчезло...<br />т.е. мне надо условие чтоб можно было перепрыгнуть <strong>show</strong> следующей формы.<br /></p><div class="codebox"><pre><code>procedure frmFon_OnShow (Sender: TObject; Action: string);
begin
    //Контроль запуска одного экземпляра программы
    if FindWindow(&#039;&#039;,&#039;already_launched&#039;)&gt;0 then
        begin
            MessageBox(&#039;Уже запущен экземпляр программы&#039;,&#039;Ошибка&#039;,MB_OK+MB_ICONINFORMATION);
            Application.Minimize;
            frmFon.Close;
        end;

    with TForm.Create(Application) do
    begin
        Name := &#039;already_launched&#039;;
        BorderStyle := bsNone;
        Width:=0;
        Height:=0;
        Show;
        Hide;
    end;
   
    begin
        //При стиле &quot;без рамки&quot; убирает второе окно
        frmMain.Parent := frmFon;

        frmMain.Show;
        frmMain.TableGrid1.dbUpdate;
    end;
end;

begin
    frmFon.OnCloseQuery := @frmFon_OnCloseQuery;
end.</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Fri, 29 Sep 2023 08:35:17 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49050#p49050</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49029#p49029</link>
			<description><![CDATA[<p>В адекватном варианте это надо было реализовать мьютексом, но в MVDb его нет...</p>]]></description>
			<author><![CDATA[null@example.com (vovka3003)]]></author>
			<pubDate>Thu, 28 Sep 2023 13:31:38 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49029#p49029</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49028#p49028</link>
			<description><![CDATA[<div class="quotebox"><cite>vovka3003 wrote:</cite><blockquote><p>Если надо ловить глобально (а не только из одной папки), тогда можно попробовать так:</p><div class="codebox"><pre><code>begin
if FindWindow(&#039;&#039;,&#039;already_launched&#039;)&gt;0 then
    begin
        ShowMessage(&#039;Программа уже запущена&#039;);
        Application.Minimize;
        Form1.Close;
    end;

with TForm.Create(Application) do
    begin
        Name := &#039;already_launched&#039;;
        BorderStyle := bsNone;
        Width:=0;
        Height:=0;
        Show;
        Hide;
    end;
end.</code></pre></div></blockquote></div><p>Мне этот вариант больше нравится. И как я сам не догадался, что окно с нужной надписью можно самому создать? А то вечные приколы с главной формой и её заголовком. Беру себе в блокнотик )))</p>]]></description>
			<author><![CDATA[null@example.com (k245)]]></author>
			<pubDate>Thu, 28 Sep 2023 13:02:39 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49028#p49028</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49027#p49027</link>
			<description><![CDATA[<div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>Люблю &quot;сделать&quot; красиво...</p></blockquote></div><p>Ну это тогда винегрет... Или помидоры со шкурками.<br />По мне так лучше минимизировать операции записи на диск, даже с &quot;какашкой&quot; весом 22&nbsp; г̶р̶а̶м̶м̶а̶&nbsp; байта...</p><div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>DeleteFile(&#039;~$applock&#039;) не прокатывает</p></blockquote></div><p>У меня прокатывает.</p>]]></description>
			<author><![CDATA[null@example.com (vovka3003)]]></author>
			<pubDate>Thu, 28 Sep 2023 12:28:42 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49027#p49027</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49026#p49026</link>
			<description><![CDATA[<p>Люблю &quot;сделать&quot; красиво...<br />Блин, просто DeleteFile(&#039;~$applock&#039;) не прокатывает, надо оказывается путь прописывать или его создавать из начально в корне или Temp... <br />Ну это подумает сп. TZipMode - подходит.</p><div class="codebox"><pre><code>    try
    ZF:=TZipFile.Create;
    ZF.Open(&#039;C:\Windows\Temp\~$applock&#039;,zmWrite);
    except
      ZF.Free;
      MessageBox(&#039;Уже запущен экземпляр программы&#039;,&#039;Ошибка&#039;,MB_OK+MB_ICONINFORMATION);
      Application.Minimize;
      frmFon.Close;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Thu, 28 Sep 2023 12:17:10 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49026#p49026</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49025#p49025</link>
			<description><![CDATA[<div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>Как понял про TZipMode, она создает файл, и дальше смотрит его наличие</p></blockquote></div><p>Не столько &quot;наличие&quot;, сколько &quot;занятость&quot; другим, ранее открытым экземпляром.<br /></p><div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>..и после завершения созданная &quot;какашка&quot; остается...</p></blockquote></div><p>Я должен &quot;бумажку подать&quot;?</p>]]></description>
			<author><![CDATA[null@example.com (vovka3003)]]></author>
			<pubDate>Thu, 28 Sep 2023 12:11:30 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49025#p49025</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49024#p49024</link>
			<description><![CDATA[<p>Как понял про TZipMode, она создает файл, и дальше смотрит его наличие... и после завершения созданная &quot;какашка&quot; остается... а функции удаления нет или скрытого параметра...</p><p>И больше подходит с TZipMode, т.к. у меня выскакивает запрос на закрытие...</p>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Thu, 28 Sep 2023 11:56:35 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49024#p49024</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49022#p49022</link>
			<description><![CDATA[<p>Если надо ловить глобально (а не только из одной папки), тогда можно попробовать так:</p><div class="codebox"><pre><code>begin
if FindWindow(&#039;&#039;,&#039;already_launched&#039;)&gt;0 then
    begin
        ShowMessage(&#039;Программа уже запущена&#039;);
        Application.Minimize;
        Form1.Close;
    end;

with TForm.Create(Application) do
    begin
        Name := &#039;already_launched&#039;;
        BorderStyle := bsNone;
        Width:=0;
        Height:=0;
        Show;
        Hide;
    end;
end.</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (vovka3003)]]></author>
			<pubDate>Thu, 28 Sep 2023 11:41:41 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49022#p49022</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49021#p49021</link>
			<description><![CDATA[<p>Понял, сп.</p>]]></description>
			<author><![CDATA[null@example.com (vit007)]]></author>
			<pubDate>Thu, 28 Sep 2023 10:32:45 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49021#p49021</guid>
		</item>
		<item>
			<title><![CDATA[Re: Контроль запуска одного экземпляра программы]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=49020#p49020</link>
			<description><![CDATA[<div class="quotebox"><cite>vit007 wrote:</cite><blockquote><p>Реакция на Zip... <img src="https://myvisualdatabase.com/forum/img/smilies/smile.png" width="15" height="15" alt="smile" /></p></blockquote></div><p>Это для случаев, когда из одной и той же папки выполняется повторная попытка запустить exe-шник. <br />zip - это контрольный файл, по которому проверяется запущенный экземпляр. Если &quot;занят&quot;, значит программа уже открыта.</p>]]></description>
			<author><![CDATA[null@example.com (vovka3003)]]></author>
			<pubDate>Thu, 28 Sep 2023 09:56:48 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=49020#p49020</guid>
		</item>
	</channel>
</rss>
