<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x421;&#x435;&#x440;&#x438;&#x430;&#x43B;&#x438;&#x437;&#x430;&#x446;&#x438;&#x44F;/&#x427;&#x442;&#x435;&#x43D;&#x438;&#x435; &#x43A;&#x43E;&#x43C;&#x43F;&#x43E;&#x43D;&#x435;&#x43D;&#x442;&#x43E;&#x432; &#x438;&#x437; &#x440;&#x435;&#x441;&#x443;&#x440;&#x441;&#x43E;&#x432; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x432;&#x43E;&#x43F;&#x440;&#x43E;&#x441;&#x43E;&#x432;</title><link>https://fire-monkey.ru/forum/274-%D1%81%D0%B5%D1%80%D0%B8%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F%D1%87%D1%82%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BA%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D0%BE%D0%B2-%D0%B8%D0%B7-%D1%80%D0%B5%D1%81%D1%83%D1%80%D1%81%D0%BE%D0%B2/</link><description>&#x421;&#x435;&#x440;&#x438;&#x430;&#x43B;&#x438;&#x437;&#x430;&#x446;&#x438;&#x44F;/&#x427;&#x442;&#x435;&#x43D;&#x438;&#x435; &#x43A;&#x43E;&#x43C;&#x43F;&#x43E;&#x43D;&#x435;&#x43D;&#x442;&#x43E;&#x432; &#x438;&#x437; &#x440;&#x435;&#x441;&#x443;&#x440;&#x441;&#x43E;&#x432; &#x43F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x445; &#x432;&#x43E;&#x43F;&#x440;&#x43E;&#x441;&#x43E;&#x432;</description><language>ru</language><item><title>&#x441;&#x435;&#x440;&#x438;&#x439;&#x43D;&#x44B;&#x439; &#x43D;&#x43E;&#x43C;&#x435;&#x440; &#x43C;&#x43E;&#x43D;&#x438;&#x442;&#x43E;&#x440;&#x430;</title><link>https://fire-monkey.ru/topic/10482-%D1%81%D0%B5%D1%80%D0%B8%D0%B9%D0%BD%D1%8B%D0%B9-%D0%BD%D0%BE%D0%BC%D0%B5%D1%80-%D0%BC%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80%D0%B0/</link><description><![CDATA[<p>
	Как получить модель и серийный номер монитора(firemonkey)? Нашел  класс <strong>WmiMonitorID</strong> и <strong>GetMonitorDetails</strong> и тип <strong>Dword </strong>но не пойму как приладить так чтобы выдавали  данные о по по которым можно будет идентифицировать монитор но не пойму как приладить так чтобы выдавали  данные о по по которым можно будет идентифицировать монитор 
</p>
]]></description><guid isPermaLink="false">10482</guid><pubDate>Fri, 16 Aug 2024 06:24:39 +0000</pubDate></item><item><title>unit reger;  interface  uses   System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,   FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,   FMX.Controls.Presentation, FMX.StdCtrls, Registry,inifiles;  type   TForm1 =</title><link>https://fire-monkey.ru/topic/10212-unit-reger-interface-uses-systemsysutils-systemtypes-systemuitypes-systemclasses-systemvariants-fmxtypes-fmxcontrols-fmxforms-fmxgraphics-fmxdialogs-fmxcontrolspresentation-fmxstdctrls-registryinifiles-type-tform1/</link><description><![CDATA[<p>
	Добрый день! Создаю программу (Firemonkey Delphi). Для программы, не обходим автозапуск им занялся в первую очередь. В процессе работы появилось два варианта:<br />
	1-й вариант:
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted"><span class="pln">unit reger</span><span class="pun">;</span><span class="pln">

interface

uses
  </span><span class="typ">System</span><span class="pun">.</span><span class="typ">SysUtils</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Types</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">UITypes</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Classes</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Variants</span><span class="pun">,</span><span class="pln">
  FMX</span><span class="pun">.</span><span class="typ">Types</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Controls</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Forms</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Graphics</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Dialogs</span><span class="pun">,</span><span class="pln">
  FMX</span><span class="pun">.</span><span class="typ">Controls</span><span class="pun">.</span><span class="typ">Presentation</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">StdCtrls</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Registry</span><span class="pun">,</span><span class="pln">inifiles</span><span class="pun">;</span><span class="pln">

type
  </span><span class="typ">TForm1</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">(</span><span class="typ">TForm</span><span class="pun">)</span><span class="pln">
    </span><span class="typ">CornerButton1</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TCornerButton</span><span class="pun">;</span><span class="pln">
    procedure </span><span class="typ">CornerButton1Click</span><span class="pun">(</span><span class="typ">Sender</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TObject</span><span class="pun">);</span><span class="pln">
  </span><span class="kwd">private</span><span class="pln">
    </span><span class="pun">{</span><span class="pln"> </span><span class="typ">Private</span><span class="pln"> declarations </span><span class="pun">}</span><span class="pln">
  </span><span class="kwd">public</span><span class="pln">
    </span><span class="pun">{</span><span class="pln"> </span><span class="typ">Public</span><span class="pln"> declarations </span><span class="pun">}</span><span class="pln">
  end</span><span class="pun">;</span><span class="pln">

var
  </span><span class="typ">Form1</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TForm1</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">:</span><span class="pln"> tregistry</span><span class="pun">;</span><span class="pln">
  S</span><span class="pun">:</span><span class="pln">string</span><span class="pun">;</span><span class="pln">
  S1</span><span class="pun">:</span><span class="pln">ansistring</span><span class="pun">;</span><span class="pln">
  </span><span class="typ">Win</span><span class="pun">:</span><span class="typ">TIniFile</span><span class="pun">;</span><span class="pln">
implementation

</span><span class="pun">{</span><span class="pln">$R </span><span class="pun">*.</span><span class="pln">fmx</span><span class="pun">}</span><span class="pln">

procedure </span><span class="typ">TForm1</span><span class="pun">.</span><span class="typ">CornerButton1Click</span><span class="pun">(</span><span class="typ">Sender</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TObject</span><span class="pun">);</span><span class="pln">




begin
  reg </span><span class="pun">:=</span><span class="pln"> </span><span class="typ">TRegistry</span><span class="pun">.</span><span class="typ">Create</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">.</span><span class="typ">RootKey</span><span class="pln"> </span><span class="pun">:=</span><span class="pln"> HKEY_LOCAL_MACHINE</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">.</span><span class="typ">LazyWrite</span><span class="pln"> </span><span class="pun">:=</span><span class="pln"> </span><span class="kwd">false</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">.</span><span class="typ">OpenKey</span><span class="pun">(</span><span class="str">'Software\Microsoft\Windows\CurrentVersion\Run'</span><span class="pun">,</span><span class="kwd">false</span><span class="pun">);</span><span class="pln">
  reg</span><span class="pun">.</span><span class="typ">WriteString</span><span class="pun">(</span><span class="str">'My App'</span><span class="pun">,</span><span class="pln"> </span><span class="typ">ExtractFilePath</span><span class="pun">(</span><span class="typ">ParamStr</span><span class="pun">(</span><span class="lit">0</span><span class="pun">))+</span><span class="str">'Regerregistrori.exe'</span><span class="pun">);</span><span class="pln">
  reg</span><span class="pun">.</span><span class="typ">CloseKey</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">.</span><span class="pln">free</span><span class="pun">;</span><span class="pln">
end</span><span class="pun">;</span><span class="pln">


end</span><span class="pun">.</span></pre>

<p>
	Второй вариант
</p>

<pre class="ipsCode prettyprint lang-c prettyprinted"><span class="pln">unit reger</span><span class="pun">;</span><span class="pln">

interface

uses
  </span><span class="typ">System</span><span class="pun">.</span><span class="typ">SysUtils</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Types</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">UITypes</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Classes</span><span class="pun">,</span><span class="pln"> </span><span class="typ">System</span><span class="pun">.</span><span class="typ">Variants</span><span class="pun">,</span><span class="pln">
  FMX</span><span class="pun">.</span><span class="typ">Types</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Controls</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Forms</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Graphics</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">Dialogs</span><span class="pun">,</span><span class="pln">
  FMX</span><span class="pun">.</span><span class="typ">Controls</span><span class="pun">.</span><span class="typ">Presentation</span><span class="pun">,</span><span class="pln"> FMX</span><span class="pun">.</span><span class="typ">StdCtrls</span><span class="pun">,</span><span class="pln"> </span><span class="typ">Registry</span><span class="pun">,</span><span class="pln">inifiles</span><span class="pun">;</span><span class="pln">

type
  </span><span class="typ">TForm1</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">class</span><span class="pun">(</span><span class="typ">TForm</span><span class="pun">)</span><span class="pln">
    </span><span class="typ">CornerButton1</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TCornerButton</span><span class="pun">;</span><span class="pln">
    procedure </span><span class="typ">CornerButton1Click</span><span class="pun">(</span><span class="typ">Sender</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TObject</span><span class="pun">);</span><span class="pln">
  </span><span class="kwd">private</span><span class="pln">
    </span><span class="pun">{</span><span class="pln"> </span><span class="typ">Private</span><span class="pln"> declarations </span><span class="pun">}</span><span class="pln">
  </span><span class="kwd">public</span><span class="pln">
    </span><span class="pun">{</span><span class="pln"> </span><span class="typ">Public</span><span class="pln"> declarations </span><span class="pun">}</span><span class="pln">
  end</span><span class="pun">;</span><span class="pln">

var
  </span><span class="typ">Form1</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TForm1</span><span class="pun">;</span><span class="pln">
  reg</span><span class="pun">:</span><span class="pln"> tregistry</span><span class="pun">;</span><span class="pln">
  S</span><span class="pun">:</span><span class="pln">string</span><span class="pun">;</span><span class="pln">
  S1</span><span class="pun">:</span><span class="pln">ansistring</span><span class="pun">;</span><span class="pln">
  </span><span class="typ">Win</span><span class="pun">:</span><span class="typ">TIniFile</span><span class="pun">;</span><span class="pln">
implementation

</span><span class="pun">{</span><span class="pln">$R </span><span class="pun">*.</span><span class="pln">fmx</span><span class="pun">}</span><span class="pln">

procedure </span><span class="typ">TForm1</span><span class="pun">.</span><span class="typ">CornerButton1Click</span><span class="pun">(</span><span class="typ">Sender</span><span class="pun">:</span><span class="pln"> </span><span class="typ">TObject</span><span class="pun">);</span><span class="pln">


begin
</span><span class="typ">Win</span><span class="pun">:=</span><span class="typ">TIniFile</span><span class="pun">.</span><span class="typ">Create</span><span class="pun">(</span><span class="str">'Win.ini'</span><span class="pun">);</span><span class="pln">
</span><span class="typ">Win</span><span class="pun">.</span><span class="typ">ReadString</span><span class="pun">(</span><span class="str">'windows'</span><span class="pun">,</span><span class="str">'run'</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">);</span><span class="pln">
</span><span class="typ">Win</span><span class="pun">.</span><span class="typ">WriteString</span><span class="pun">(</span><span class="str">'windows'</span><span class="pun">,</span><span class="pln"> </span><span class="str">'run'</span><span class="pun">,</span><span class="typ">ExtractFilePath</span><span class="pun">(</span><span class="typ">ParamStr</span><span class="pun">(</span><span class="lit">0</span><span class="pun">))+</span><span class="str">'Regerregistrori.exe'</span><span class="pun">);</span><span class="pln">
</span><span class="typ">Win</span><span class="pun">.</span><span class="typ">Free</span><span class="pun">;</span><span class="pln">
end</span><span class="pun">;</span><span class="pln">

end</span><span class="pun">.</span><span class="pln">
</span></pre>
]]></description><guid isPermaLink="false">10212</guid><pubDate>Tue, 23 Jul 2024 09:43:19 +0000</pubDate></item><item><title>&#x41A;&#x43B;&#x43E;&#x43D;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; &#x43E;&#x431;&#x44A;&#x435;&#x43A;&#x442;&#x430;</title><link>https://fire-monkey.ru/topic/8540-%D0%BA%D0%BB%D0%BE%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%B0/</link><description><![CDATA[<p>
	Здравствуйте!
</p>

<p>
	Пишу алгоритм с параллельными вычислениями. Один из объектов является разделяемым ресурсом и хотелось бы его клонировать. Объект достаточно сложный и использует другие объекты. Возникла идея применения механизма сериализации/десериализации. Примерный код ниже.
</p>

<p>
	function Cloning(RootObject: TComponent): TComponent;<br />
	var<br />
	  MemStream: TMemoryStream;<br />
	begin<br />
	  MemStream := TMemoryStream.Create;<br />
	  try<br />
	    MemStream.WriteComponent(RootObject);<br />
	    MemStream.Position := 0;<br />
	    Result := MemStream.ReadComponent(RootObject);<br />
	  finally<br />
	    MemStream.Free;<br />
	  end;<br />
	end;
</p>

<p>
	<br />
	Данный код, однако, не дает нужного результата. Исходный компонент RootObject и Result, в итоге, ссылаются на одну и ту же область памяти. Может ли уважаемое сообщество предложить какие-то решения?
</p>
]]></description><guid isPermaLink="false">8540</guid><pubDate>Thu, 08 Feb 2024 07:00:15 +0000</pubDate></item><item><title>Jni</title><link>https://fire-monkey.ru/topic/5560-jni/</link><description><![CDATA[
<p>
	<span>У меня задача нужно в приложение использоваться </span><span lang="en-us" xml:lang="en-us">jar</span><span lang="en-us" xml:lang="en-us"> </span><span>– файл (программа пишется под </span><span lang="en-us" xml:lang="en-us">windows</span><span>).</span>
</p>

<p>
	<span>В исходниках студи есть Androidapi.Jni – как понимаю это </span><span lang="en-us" xml:lang="en-us">JNI</span><span lang="en-us" xml:lang="en-us"> </span><span>– под андройд, вопрос, как его можно переделать под </span><span lang="en-us" xml:lang="en-us">Windows</span><span>.</span><span lang="en-us" xml:lang="en-us">Jni</span><span lang="en-us" xml:lang="en-us"> </span><span>– (если это вообще возможности).</span>
</p>

<p>
	<span>Если описание </span><span lang="en-us" xml:lang="en-us">JNI</span><span lang="en-us" xml:lang="en-us"> </span><span>– хоть пуская с++, что из своего приложение запускать </span><span lang="en-us" xml:lang="en-us">JVM</span><span lang="en-us" xml:lang="en-us"> </span><span><span> </span>и выполнять файл </span><span lang="en-us" xml:lang="en-us">jar</span><span> (библиотеку)</span>
</p>
]]></description><guid isPermaLink="false">5560</guid><pubDate>Mon, 01 Apr 2019 13:55:41 +0000</pubDate></item></channel></rss>
