<?xml version="1.0" encoding="UTF-8"?> <rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Security News &#187; c++</title> <atom:link href="http://www.secnews.pl/tag/c/feed/" rel="self" type="application/rss+xml" /><link>http://www.secnews.pl</link> <description>Reverse engineering, ochrona oprogramowania.</description> <lastBuildDate>Mon, 30 Jan 2012 14:41:10 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Patcher dla C#</title><link>http://www.secnews.pl/2012/01/12/patcher-dla-c-sharp/</link> <comments>http://www.secnews.pl/2012/01/12/patcher-dla-c-sharp/#comments</comments> <pubDate>Thu, 12 Jan 2012 13:23:01 +0000</pubDate> <dc:creator>bartek</dc:creator> <category><![CDATA[C#]]></category> <category><![CDATA[Programowanie]]></category> <category><![CDATA[c++]]></category> <category><![CDATA[patcher]]></category><guid isPermaLink="false">http://www.secnews.pl/?p=1194</guid> <description><![CDATA[Czekałem na koniec świata, ale jakoś go nie było, tymczasem mała klasa w C# do patchowania plików z paroma przydatnymi opcjami jak np. patchowanie stringow Delphi. using System; using System.IO; using System.Collections.Generic; using System.Text; &#160; namespace NetPatcher &#123; class Patcher &#123; public FileStream inputFile; &#160; public Patcher&#40;&#41; &#123; &#125; &#160; ~Patcher&#40;&#41; &#123; CloseFile&#40;&#41;; &#125; &#160; [...]]]></description> <content:encoded><![CDATA[<p>Czekałem na koniec świata, ale jakoś go nie było, tymczasem mała klasa w C# do patchowania plików z paroma przydatnymi opcjami jak np. patchowanie stringow Delphi.</p><div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span>
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span>
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF; font-weight: bold;">namespace</span> NetPatcher
<span style="color: #008000;">&#123;</span>
    <span style="color: #6666cc; font-weight: bold;">class</span> Patcher
    <span style="color: #008000;">&#123;</span>
        <span style="color: #0600FF; font-weight: bold;">public</span> FileStream inputFile<span style="color: #008000;">;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> Patcher<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        ~Patcher<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            CloseFile<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">bool</span> OpenFile<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> filePath<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #0600FF; font-weight: bold;">try</span>
            <span style="color: #008000;">&#123;</span>
                inputFile <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> FileStream<span style="color: #008000;">&#40;</span>filePath, FileMode<span style="color: #008000;">.</span><span style="color: #0000FF;">Open</span>, FileAccess<span style="color: #008000;">.</span><span style="color: #0000FF;">ReadWrite</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #0600FF; font-weight: bold;">return</span> inputFile <span style="color: #008000;">==</span> <span style="color: #0600FF; font-weight: bold;">null</span> <span style="color: #008000;">?</span> <span style="color: #0600FF; font-weight: bold;">false</span> <span style="color: #008000;">:</span> <span style="color: #0600FF; font-weight: bold;">true</span><span style="color: #008000;">;</span>
            <span style="color: #008000;">&#125;</span>
            <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>Exception e<span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
                <span style="color: #008080; font-style: italic;">//return false;</span>
            <span style="color: #008000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">false</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> CloseFile<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>inputFile <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
                inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Close</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008000;">&#125;</span>
&nbsp;
            inputFile <span style="color: #008000;">=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchArray<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, <span style="color: #6666cc; font-weight: bold;">byte</span><span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> patchBytes<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Seek</span><span style="color: #008000;">&#40;</span>fileOffset, SeekOrigin<span style="color: #008000;">.</span><span style="color: #0000FF;">Begin</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span>patchBytes, <span style="color: #FF0000;">0</span>, patchBytes<span style="color: #008000;">.</span><span style="color: #0000FF;">Length</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Position</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchByte<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, <span style="color: #6666cc; font-weight: bold;">byte</span> patchByte<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Seek</span><span style="color: #008000;">&#40;</span>fileOffset, SeekOrigin<span style="color: #008000;">.</span><span style="color: #0000FF;">Begin</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">WriteByte</span><span style="color: #008000;">&#40;</span>patchByte<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Position</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchString<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, <span style="color: #6666cc; font-weight: bold;">string</span> patchString<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #000000;">System.<span style="color: #0000FF;">Text</span></span><span style="color: #008000;">.</span><span style="color: #0000FF;">Encoding</span> asciiEncoding <span style="color: #008000;">=</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Text</span></span><span style="color: #008000;">.</span><span style="color: #0000FF;">Encoding</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ASCII</span><span style="color: #008000;">;</span>
            <span style="color: #6666cc; font-weight: bold;">byte</span><span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> encodedPatchString <span style="color: #008000;">=</span> asciiEncoding<span style="color: #008000;">.</span><span style="color: #0000FF;">GetBytes</span><span style="color: #008000;">&#40;</span>patchString<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> PatchArray<span style="color: #008000;">&#40;</span>fileOffset, encodedPatchString<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchDelphiString<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, <span style="color: #6666cc; font-weight: bold;">string</span> patchString<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #000000;">System.<span style="color: #0000FF;">Text</span></span><span style="color: #008000;">.</span><span style="color: #0000FF;">Encoding</span> asciiEncoding <span style="color: #008000;">=</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Text</span></span><span style="color: #008000;">.</span><span style="color: #0000FF;">Encoding</span><span style="color: #008000;">.</span><span style="color: #0000FF;">GetEncoding</span><span style="color: #008000;">&#40;</span><span style="color: #FF0000;">1250</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #6666cc; font-weight: bold;">byte</span><span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> encodedPatchString <span style="color: #008000;">=</span> asciiEncoding<span style="color: #008000;">.</span><span style="color: #0000FF;">GetBytes</span><span style="color: #008000;">&#40;</span>patchString<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            PatchByte<span style="color: #008000;">&#40;</span>fileOffset, <span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">byte</span><span style="color: #008000;">&#41;</span>encodedPatchString<span style="color: #008000;">.</span><span style="color: #0000FF;">Length</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            PatchArray<span style="color: #008000;">&#40;</span>fileOffset <span style="color: #008000;">+</span> <span style="color: #FF0000;">1</span>, encodedPatchString<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Position</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchInt32<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, Int32 patchInt32<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #6666cc; font-weight: bold;">byte</span><span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> encodedInt32 <span style="color: #008000;">=</span> BitConverter<span style="color: #008000;">.</span><span style="color: #0000FF;">GetBytes</span><span style="color: #008000;">&#40;</span>patchInt32<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            PatchArray<span style="color: #008000;">&#40;</span>fileOffset, encodedInt32<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Position</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">long</span> PatchFill<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">long</span> fileOffset, <span style="color: #6666cc; font-weight: bold;">long</span> Length, <span style="color: #6666cc; font-weight: bold;">byte</span> patchByteFill<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #0600FF; font-weight: bold;">while</span> <span style="color: #008000;">&#40;</span>Length<span style="color: #008000;">--</span> <span style="color: #008000;">!=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
                PatchByte<span style="color: #008000;">&#40;</span>fileOffset<span style="color: #008000;">++</span>, patchByteFill<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #008000;">&#125;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> inputFile<span style="color: #008000;">.</span><span style="color: #0000FF;">Position</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
    <span style="color: #008000;">&#125;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>]]></content:encoded> <wfw:commentRss>http://www.secnews.pl/2012/01/12/patcher-dla-c-sharp/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>IDE Code::Blocks v8.02</title><link>http://www.secnews.pl/2008/03/03/ide-code-blocks-v802/</link> <comments>http://www.secnews.pl/2008/03/03/ide-code-blocks-v802/#comments</comments> <pubDate>Mon, 03 Mar 2008 20:02:12 +0000</pubDate> <dc:creator>bartek</dc:creator> <category><![CDATA[C/C++]]></category> <category><![CDATA[Programowanie]]></category> <category><![CDATA[c++]]></category> <category><![CDATA[ide]]></category><guid isPermaLink="false">http://www.secnews.pl/2008/03/03/ide-codeblocks-802/</guid> <description><![CDATA[Ukazała się zaktualizowana wersja darmowego środowiska IDE (zintegrowane środowisko programistyczne) o nazwie Code::Blocks v8.02 dla języka C++. Jest ona dostępna w wersjach dla systemów operacyjnych: Windows 2000 / XP / Vista Linux (Ubuntu &#38; Debian, 32 &#38; 64 bits) Mac OS X 10.4+ Strona domowa projektu &#8211; http://www.codeblocks.org]]></description> <content:encoded><![CDATA[<p>Ukazała się zaktualizowana wersja darmowego środowiska IDE (zintegrowane środowisko programistyczne) o nazwie <strong>Code::Blocks</strong> v8.02 dla języka <strong>C++</strong>.</p><p><a href="http://www.codeblocks.org"><img src="http://www.secnews.pl/wp-content/uploads/2008/03/codeblocks802.jpg" alt="Code::Blocks" /></a></p><p>Jest ona dostępna w wersjach dla systemów operacyjnych:</p><ul><li>Windows 2000 / XP / Vista</li><li>Linux (Ubuntu &amp; Debian, 32 &amp; 64 bits)</li><li>Mac OS X 10.4+</li></ul><p>Strona domowa projektu &#8211; <a href="http://www.codeblocks.org">http://www.codeblocks.org</a></p> ]]></content:encoded> <wfw:commentRss>http://www.secnews.pl/2008/03/03/ide-code-blocks-v802/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>MFC w roku 2008</title><link>http://www.secnews.pl/2007/11/10/mfc-w-roku-2008/</link> <comments>http://www.secnews.pl/2007/11/10/mfc-w-roku-2008/#comments</comments> <pubDate>Sat, 10 Nov 2007 20:38:20 +0000</pubDate> <dc:creator>bartek</dc:creator> <category><![CDATA[C/C++]]></category> <category><![CDATA[Programowanie]]></category> <category><![CDATA[c++]]></category> <category><![CDATA[mfc]]></category><guid isPermaLink="false">http://www.secnews.pl/2007/11/10/mfc-w-roku-2008/</guid> <description><![CDATA[MFC czyli zestaw pomocniczych klas dla środowiska Microsoft Visual Studio C++ od nowego roku zostanie wzbogacony w kilka nowych komponentów graficznych, takich jak m.in. znany z Office11 ribbon, listy menu, kontrolki dokujące znane z Visual Studio i kilka innych: http://blogs.msdn.com/vcblog/archive/2007/11/09/quick-tour-of-new-mfc-functionality.aspx Dla mnie jest to duże zaskoczenie, że po tylu latach niepublikowania tych wszystkich komponentów graficznych, [...]]]></description> <content:encoded><![CDATA[<p>MFC czyli zestaw pomocniczych klas dla środowiska Microsoft Visual Studio C++ od nowego roku zostanie wzbogacony w kilka nowych komponentów graficznych, takich jak m.in. znany z Office11 ribbon, listy menu, kontrolki dokujące znane z Visual Studio i kilka innych:</p><p><a HREF="http://blogs.msdn.com/vcblog/archive/2007/11/09/quick-tour-of-new-mfc-functionality.aspx">http://blogs.msdn.com/vcblog/archive/2007/11/09/quick-tour-of-new-mfc-functionality.aspx</a></p><p>Dla mnie jest to duże zaskoczenie, że po tylu latach niepublikowania tych wszystkich komponentów graficznych, które de facto wprowadzały nowe standardy w graficznych interfejsach użytkownika, firma Microsoft zdecydowała się nagle dać szansę na darmowe skorzystanie z tych komponentów (bez używania płatnych, których nie brakuje).</p><p>Jedni się cieszą, ale na listach dyskusyjnych pojawiły się głosy, że może to również spowodować upadek firm takich jak CodeJock, BCGSoft lub prędzej indywidualnych programistów, którzy tworzą komponenty zgodne z nowymi elemetami graficznymi wprowadzanymi sukcesywnie w produktach Microsoftu.</p> ]]></content:encoded> <wfw:commentRss>http://www.secnews.pl/2007/11/10/mfc-w-roku-2008/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Szopka z MediaDefender</title><link>http://www.secnews.pl/2007/10/06/szopka-z-mediadefender/</link> <comments>http://www.secnews.pl/2007/10/06/szopka-z-mediadefender/#comments</comments> <pubDate>Sat, 06 Oct 2007 07:36:37 +0000</pubDate> <dc:creator>bartek</dc:creator> <category><![CDATA[Inne]]></category> <category><![CDATA[Ze Świata]]></category> <category><![CDATA[c++]]></category> <category><![CDATA[mediadefender]]></category> <category><![CDATA[torrent]]></category><guid isPermaLink="false">http://www.secnews.pl/2007/10/06/szopka-z-mediadefender/</guid> <description><![CDATA[Każdy już chyba słyszał o przecieku z firmy zwalczającej piractwo w sieciach P2P, jednak najlepsze z tego wszystkiego są źródła praktycznie wszystkich narzędzi wykorzystywanych przez firmę MediaDefender do sabotowania działań użytkowników w sieciach P2P. Prawie 240 MB źródeł w C++ można ściągnąć ze strony: http://mediadefender-defenders.com/]]></description> <content:encoded><![CDATA[<p>Każdy już chyba słyszał o <a href="http://torrentfreak.com/mediadefender-emails-leaked-070915/">przecieku</a> z firmy zwalczającej piractwo w sieciach P2P, jednak najlepsze z tego wszystkiego są źródła praktycznie wszystkich narzędzi wykorzystywanych przez firmę <strong>MediaDefender</strong> do sabotowania działań użytkowników w sieciach P2P. Prawie 240 MB źródeł w C++ można ściągnąć ze strony:</p><p><a HREF="http://mediadefender-defenders.com/">http://mediadefender-defenders.com/</a></p> ]]></content:encoded> <wfw:commentRss>http://www.secnews.pl/2007/10/06/szopka-z-mediadefender/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
