<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[counter]]></title><description><![CDATA[<p>Hi leute</p>
<p>Hab eine Frage und zwar ist es realisierbar einen Counter zu erstellen der von 0 an bis 30 Hochläuft und das Programm nicht mehr zu öffnen ist, Damit mein ich wenn man das Programm einmal öffnet das dan ne 1 erscheint. Beim schließen soll es aber gespeichert werden , und beim 2 mal öffnen das da dan ne 2 steht also das man es nur insgesamt 30 mal öffnen kann. Ist das realisierbar?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/92559/counter</link><generator>RSS for Node</generator><lastBuildDate>Wed, 08 Jul 2026 11:41:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/92559.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 20 Nov 2004 16:02:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to counter on Sat, 20 Nov 2004 16:02:01 GMT]]></title><description><![CDATA[<p>Hi leute</p>
<p>Hab eine Frage und zwar ist es realisierbar einen Counter zu erstellen der von 0 an bis 30 Hochläuft und das Programm nicht mehr zu öffnen ist, Damit mein ich wenn man das Programm einmal öffnet das dan ne 1 erscheint. Beim schließen soll es aber gespeichert werden , und beim 2 mal öffnen das da dan ne 2 steht also das man es nur insgesamt 30 mal öffnen kann. Ist das realisierbar?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655717</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655717</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sat, 20 Nov 2004 16:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sat, 20 Nov 2004 16:23:24 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>realisierbar ist vom Prinzip her alles<br />
Die Frage ist: wie leicht ist es zu knacken</p>
<p>zB Speichern des Counters in einer Ini - in der Reg</p>
<p>MfG<br />
Klaus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655727</guid><dc:creator><![CDATA[KlausB]]></dc:creator><pubDate>Sat, 20 Nov 2004 16:23:24 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sat, 20 Nov 2004 17:39:04 GMT]]></title><description><![CDATA[<p>hi</p>
<p>Auf jeden fall mach ich mir keine sorgen wie schnell man es knacken kann , würd es aber mit einer ini Datei probieren , wenns geht auch mit der Registry.<br />
Hat jemand vieleicht ein beispiel wie ich das machen kann?</p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655755</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sat, 20 Nov 2004 17:39:04 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sat, 20 Nov 2004 22:54:25 GMT]]></title><description><![CDATA[<p>Ini öffnen, Wert auslesen, Wenn Wert größer X Programm schließen sonst Wert hochzählen, in Ini speichern, fertig. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655884</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655884</guid><dc:creator><![CDATA[HEZ]]></dc:creator><pubDate>Sat, 20 Nov 2004 22:54:25 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 10:22:44 GMT]]></title><description><![CDATA[<p>hi<br />
habs mal probiert aber es funktioniert nicht , es wird immer nur eine 1 in die ini geschrieben.</p>
<pre><code>#include &lt;vcl.h&gt;
#pragma hdrstop

#include &quot;Unit1.h&quot;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
#include &lt;inifiles.hpp&gt;
TForm1 *Form1;

TIniFile *Ini = new TIniFile(&quot;.\\counter.ini&quot;);
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{

}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
  static int i = Ini-&gt;ReadBool(&quot;Form&quot;,&quot;Counter&quot;,&quot;&quot;);
  {
    Ini-&gt;WriteBool(&quot;Form&quot;,&quot;Counter&quot;,(i++));
  }
}
//---------------------------------------------------------------------------
</code></pre>
<p>Weiß jemand wo der Fehler ist?</p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655968</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655968</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 10:22:44 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 11:31:13 GMT]]></title><description><![CDATA[<p>Fregger,</p>
<p>ein Klassiker: versuchs mal mit ++i</p>
]]></description><link>https://www.c-plusplus.net/forum/post/655998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/655998</guid><dc:creator><![CDATA[dschensky]]></dc:creator><pubDate>Sun, 21 Nov 2004 11:31:13 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 12:05:51 GMT]]></title><description><![CDATA[<p>hi</p>
<p>Jetzt wird dan nur ne 2 in die ini geschrieben , sonst nix mehr. Ich will aber das es bei jedem öffnen eins hochzählt. Also beim 1 öffnen solls ne 1 in die ini schreiben und beim 2. öffnen ne 2 reinschreiben usw.</p>
<p>So wie bei dem beispiel , bei jedem mausklick wird es hochgezählt:</p>
<pre><code>void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
      TShiftState Shift, int X, int Y)
{
  static int i = 1;
  {
    Memo1-&gt;Lines-&gt;Append(i++);
  }
}
</code></pre>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656014</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 12:05:51 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 12:45:47 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>kurze Rueckfrage<br />
du verwendest</p>
<blockquote>
<p>WriteBool</p>
</blockquote>
<p>MfG<br />
Klaus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656041</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656041</guid><dc:creator><![CDATA[KlausB]]></dc:creator><pubDate>Sun, 21 Nov 2004 12:45:47 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 12:48:48 GMT]]></title><description><![CDATA[<p>ja verwende ich , weil ReadString und WriteString nicht funktionieren. Da bekomm ich ne Fehlermeldung</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656043</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656043</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 12:48:48 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 13:44:47 GMT]]></title><description><![CDATA[<p>hi ,<br />
habs endlich hinbekommen!</p>
<pre><code>#include &lt;vcl.h&gt;
#pragma hdrstop

#include &quot;Unit1.h&quot;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
#include &lt;inifiles.hpp&gt;
TForm1 *Form1;

TIniFile *Ini = new TIniFile(&quot;.\\counter.ini&quot;);
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{

}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender)
{
  static int i = Ini-&gt;ReadInteger(&quot;Form&quot;,&quot;Counter&quot;,i);
  {
    Ini-&gt;WriteInteger(&quot;Form&quot;,&quot;Counter&quot;,(++i));
  }
}
//---------------------------------------------------------------------------
</code></pre>
<p>und ein dank an dschensky für den Klassiker <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656069</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656069</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 13:44:47 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 15:14:46 GMT]]></title><description><![CDATA[<p>hi,</p>
<p>nochmal ich. Hab hier noch das gleiche mit der Registry gemacht und hab da noch 1 Frage. Wie mache ich das , wenn in der Registry die Zahl 30 steht das die Form sich nicht mehr öffnet und sich automatisch Schließt?</p>
<pre><code class="language-cpp">//---------------------------------------------------------------------------
#include &lt;vcl.h&gt;
#include &lt;vcl\registry.hpp&gt;
#pragma hdrstop
#include &quot;Unit1.h&quot;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
TForm1 *Form1;

const char * szMyKey = &quot;Software\\Fregger\\Counter&quot;;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)
{
  TRegIniFile * R;

  R = new TRegIniFile (&quot;&quot;);
  R-&gt;RootKey = HKEY_CURRENT_USER;
  R-&gt;OpenKey (szMyKey, true);

  static int i = R-&gt;ReadInteger (&quot;Form&quot;, &quot;Counter&quot;, i);
  {
    R-&gt;WriteInteger(&quot;Form&quot;,&quot;Counter&quot;,(++i));
  }

  Label1-&gt;Caption = R-&gt;ReadInteger (&quot;Form&quot;, &quot;Counter&quot;, i);

  R-&gt;Free ();
}
//---------------------------------------------------------------------------
</code></pre>
<p>Hat jemand eine Idee?</p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656123</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 15:14:46 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 16:09:47 GMT]]></title><description><![CDATA[<p>warum machst du hier Klammern?</p>
<pre><code>{ 
    R-&gt;WriteInteger(&quot;Form&quot;,&quot;Counter&quot;,(++i)); 
  }
</code></pre>
<p>und zu deiner Frage:</p>
<pre><code>if (i &gt;= 30) Application-&gt;Terminate();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/656146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656146</guid><dc:creator><![CDATA[Linnea]]></dc:creator><pubDate>Sun, 21 Nov 2004 16:09:47 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Sun, 21 Nov 2004 16:17:18 GMT]]></title><description><![CDATA[<p>hi Linnea</p>
<p>Das stand so in einem Tuti und dachte das es so sein soll *g*</p>
<p>Danke für den Code , klappt prima vielen dank <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656148</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656148</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Sun, 21 Nov 2004 16:17:18 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 08:58:41 GMT]]></title><description><![CDATA[<p>Ich jedoch würde dir empfehlen das als String, und Zwar als MD5-String abzuspeichern, das ist schon deutlich schwieriger zu knacken, vor allem, wenn du auch noch deine eigenen Sachen da reinsetzt...</p>
<p>z.B.</p>
<pre><code>MD5 von MyApp0
MD5 von MyApp1
MD5 von MyApp2
MD5 von MyApp3
MD5 von MyApp4
MD5 von MyApp5
MD5 von MyApp6
MD5 von MyApp7
MD5 von MyApp8
...
</code></pre>
<p>Dafür gibt es die Komponente TIdCoderMD5. Und wenn du in einer Schleife überprüfst, ob die Registry einen gültigen Eintrag enthält, und wenn nicht, dann einfach beendest... kann niemand deinen Counter knacken. Jedenfalls nicht so einfach. Benennst du den Eintrag jetzt noch nach etwas, was wie ein Systemeintrag klingt, wie etwa SysKeys oder so, wo niemand deine Anwendung vermutet, wird es gleich doppelt so schwierig. Allerdings gibt es nie eine 100%ige Sicherheit bei solchen Dingen, irgendwann knackt es immer einer.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656475</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656475</guid><dc:creator><![CDATA[Windoof]]></dc:creator><pubDate>Mon, 22 Nov 2004 08:58:41 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 11:06:15 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>mit dieser Methode könnte man auch ein Programm als Testversion zur Verfügung stellen, oder?</p>
<p>Wie kann man sonst eine Testversion, als Beispiel mal, auf 30 Tage beschränken?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656499</guid><dc:creator><![CDATA[testversion]]></dc:creator><pubDate>Mon, 22 Nov 2004 11:06:15 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 11:57:46 GMT]]></title><description><![CDATA[<p>Indem du das Installationsdatum speicherst... und jedesmal kontrollierst, ob es länger als 30 Tage her ist...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656536</guid><dc:creator><![CDATA[Windoof]]></dc:creator><pubDate>Mon, 22 Nov 2004 11:57:46 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 12:07:47 GMT]]></title><description><![CDATA[<p>Und kannst du mal ein beispiel geben, wie es aussieht für 30tage nach ersten start?</p>
<p>kann das mir grad nich so vorstellen....hm....</p>
<p>Opti</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656541</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656541</guid><dc:creator><![CDATA[Optipoint]]></dc:creator><pubDate>Mon, 22 Nov 2004 12:07:47 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 14:40:29 GMT]]></title><description><![CDATA[<p>Windoof schrieb:</p>
<blockquote>
<p>Indem du das Installationsdatum speicherst... und jedesmal kontrollierst, ob es länger als 30 Tage her ist...</p>
</blockquote>
<p>Naja... aber ich will es nicht in einer INI-Datei oder in der Registry notieren -&gt; leicht zu kanacken!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656571</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656571</guid><dc:creator><![CDATA[testversion]]></dc:creator><pubDate>Mon, 22 Nov 2004 14:40:29 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 16:10:19 GMT]]></title><description><![CDATA[<p>Dann schreib eine .dat datei, die 5367 zufällige(!)dummy zeichen/zahlen(sind noch lustiger), dann deine zahl und dann 25467 dummy zeichen enthält <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Versuch da mal rauszukriegen, welches die beiden richtigen zahlen sind <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Oder zeile die einzelnen ziffern noch auf...<br />
DUMMYBEREICH (10er stelle) DUMMYBEREICH (1er stelle) DUMMYBEREICH</p>
<p>Das wird dann ganz schnell, ganz lustig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title="=)"
      alt="🙂"
    /></p>
<p>Is aber vielleicht nicht der performateste weg, sollte aber relativ zuverlässig funktionieren, solange niemand die datei schreibschützt oder drüber kopiert *g*</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656682</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656682</guid><dc:creator><![CDATA[Vernochan]]></dc:creator><pubDate>Mon, 22 Nov 2004 16:10:19 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 16:25:42 GMT]]></title><description><![CDATA[<p>Hier ein gutes Programm , das aus deiner Dateiname.exe eine 30 Tage Testversion macht mit Serial.</p>
<p><a href="http://www.siliconrealms.com/index.shtml" rel="nofollow">http://www.siliconrealms.com/index.shtml</a></p>
<p>Find das aber irgendwie Doof, will das aber selbst realisiren <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656691</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656691</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Mon, 22 Nov 2004 16:25:42 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 18:17:05 GMT]]></title><description><![CDATA[<p>Falls du Ideen zum Schutz deiner Programme brauchst, kannst du ja mal hier <a href="http://lastbit.com/vitas/antihack.asp" rel="nofollow">http://lastbit.com/vitas/antihack.asp</a> nachschauen.</p>
<p>Ciao</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656783</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Mon, 22 Nov 2004 18:17:05 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Mon, 22 Nov 2004 18:22:30 GMT]]></title><description><![CDATA[<p>Danke, werd mir das mal genauer anschauen.</p>
<p>MFG Fregger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/656788</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/656788</guid><dc:creator><![CDATA[Fregger]]></dc:creator><pubDate>Mon, 22 Nov 2004 18:22:30 GMT</pubDate></item><item><title><![CDATA[Reply to counter on Tue, 23 Nov 2004 20:04:53 GMT]]></title><description><![CDATA[<p>Das Programm muss aber jedesmal das aktuellste Datum speichern, damit man es nicht zurückstellen kann.</p>
<p>Bei der Trial Version von Borland C++ 6.0 Enterprise kann man das Datum einfach zurückstellen und länger als 60 Tage benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/657560</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/657560</guid><dc:creator><![CDATA[T_B__]]></dc:creator><pubDate>Tue, 23 Nov 2004 20:04:53 GMT</pubDate></item></channel></rss>