<?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[Pointer Adresse zuweisen :)]]></title><description><![CDATA[<p>Hi, wie kann ich einem Int Pointer zb.</p>
<p>Folgende Adresse zuweisen ??</p>
<p>003F6154 ??</p>
<p>Gruss</p>
<p>BlackNight</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/166767/pointer-adresse-zuweisen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 14:30:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/166767.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 02 Dec 2006 16:42:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sat, 02 Dec 2006 16:42:19 GMT]]></title><description><![CDATA[<p>Hi, wie kann ich einem Int Pointer zb.</p>
<p>Folgende Adresse zuweisen ??</p>
<p>003F6154 ??</p>
<p>Gruss</p>
<p>BlackNight</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1185892</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1185892</guid><dc:creator><![CDATA[BlackNight007]]></dc:creator><pubDate>Sat, 02 Dec 2006 16:42:19 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sat, 02 Dec 2006 17:02:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int main()
{
    int *pointer = reinterpret_cast&lt;int*&gt;(0x003F6154);
}
</code></pre>
<p>EDIT: Die Frage ist allerdings, was du damit genau bezwecken willst. Unter WIndows kannst du zum Beispiel nicht einfach über einen Zeiger auf den Speicher einer anderen Anwendung zugreifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1185897</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1185897</guid><dc:creator><![CDATA[Phoemuex]]></dc:creator><pubDate>Sat, 02 Dec 2006 17:02:52 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sat, 02 Dec 2006 17:13:24 GMT]]></title><description><![CDATA[<p>Wieso nicht, wie muss ich es denn machen ?? :xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1185901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1185901</guid><dc:creator><![CDATA[BlackNight007]]></dc:creator><pubDate>Sat, 02 Dec 2006 17:13:24 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sat, 02 Dec 2006 18:03:04 GMT]]></title><description><![CDATA[<p>Weiss niemand wie dass geht ??, wäre echt froh wenn mir jmd. helfen kann <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1185921</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1185921</guid><dc:creator><![CDATA[BlackNight007]]></dc:creator><pubDate>Sat, 02 Dec 2006 18:03:04 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sat, 02 Dec 2006 18:38:03 GMT]]></title><description><![CDATA[<p>Hab ein bisschen gegooglet, und hab mir Folgnedes zusammengebaut:</p>
<pre><code class="language-cpp">int main()
{
	int *money;
	int moni = 10000;
	int size = sizeof(moni);

	money= reinterpret_cast&lt;int*&gt;(0x00B7CE50);

	HWND hWndAndreas = FindWindow(NULL,&quot;GTA: San Andreas&quot;);

	if(hWndAndreas==NULL)
	{
		exit(2);
	}

	SendMessage(hWndAndreas,PROCESS_VM_WRITE,NULL,NULL);

	WriteProcessMemory(hWndAndreas,money,&amp;moni,sizeof(moni),(SIZE_T*)&amp;size);

	printf(&quot;Money auf 10000 Gesetzt&quot;);
}
</code></pre>
<p>Funktioniert aber leider nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1185949</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1185949</guid><dc:creator><![CDATA[BlackNight007]]></dc:creator><pubDate>Sat, 02 Dec 2006 18:38:03 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 12:57:32 GMT]]></title><description><![CDATA[<p>BlackNight007 schrieb:</p>
<blockquote>
<pre><code class="language-cpp">SendMessage(hWndAndreas,PROCESS_VM_WRITE,NULL,NULL);
</code></pre>
</blockquote>
<p>Das funktioniert so nicht. Um schreibend auf den fremden Prozess zugreifen zu können, musst du PROCESS_VM_WRITE und PROCESS_VM_OPERATION Zugriff auf diesen haben. SendMessage ist dafür aber gar nicht zuständig. Du musst also ein Handle auf diesen Prozess erzeugen, welches den entsprechenden Zugriff erlaubt. Das machst du mit <em>OpenProcess</em>. Zudem erwartet WriteProcessMemory als ersten Parameter ein Prozess Handle (welches du eben von OpenProcess erhälst) und kein Fenster Handle. Für eine ausführlichere Erklärung schaust du zB mal <a href="http://www.egocrew.de/programmierung/c_c_und_c/speicherzugriff_tutorial_teil_1" rel="nofollow">hier</a> nach.</p>
<p>btw:<br />
&quot;Funktioniert nicht&quot; ist keine ausreichende Problembeschreibung. Und warum ist size nicht vom Typ SIZE_T, wenn es doch der erforderliche Typ ist. Es gibt mehr als int, und Casts sind nicht dazu da, solche Unsauberkeiten zu umgehen. Das führt sehr schnell zu fehlerhaften Anwendungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186229</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Sun, 03 Dec 2006 12:57:32 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 13:03:30 GMT]]></title><description><![CDATA[<p>Gibts keine Cheats für GTA? Immer dieses Schreiben in fremde Prozesse... tz... Wenn ich ein Programm wäre würds mich ganz schön ärgern wenn jemand in mich reinschreiben würde...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186234</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 03 Dec 2006 13:03:30 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 14:01:35 GMT]]></title><description><![CDATA[<p>groovemaster schrieb:</p>
<blockquote>
<p>Und warum ist size nicht vom Typ SIZE_T, wenn es doch der erforderliche Typ ist. Es gibt mehr als int, und Casts sind nicht dazu da, solche Unsauberkeiten zu umgehen. Das führt sehr schnell zu fehlerhaften Anwendungen.</p>
</blockquote>
<ol>
<li>
<p>Wodurch sollen da unbedingt Fehler entstehen? Ich benutze eigentlich auch immer int anstatt size_t und hatte noch nie Probleme...</p>
</li>
<li>
<p>Wo siehst du da einen cast?</p>
</li>
</ol>
]]></description><link>https://www.c-plusplus.net/forum/post/1186270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186270</guid><dc:creator><![CDATA[Phoemuex]]></dc:creator><pubDate>Sun, 03 Dec 2006 14:01:35 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 14:21:03 GMT]]></title><description><![CDATA[<p>Phoemuex schrieb:</p>
<blockquote>
<ol>
<li>Wodurch sollen da unbedingt Fehler entstehen?</li>
</ol>
</blockquote>
<p>Wenn SIZE_T eine andere Grösse als int hat, was zB unter Win64 der Fall ist, dann wird mehr Speicher beschrieben, als die Variable tatsächlich besitzt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> undefiniertes Verhalten.</p>
<p>Phoemuex schrieb:</p>
<blockquote>
<p>Ich benutze eigentlich auch immer int anstatt size_t und hatte noch nie Probleme...</p>
</blockquote>
<p>Dann solltest du das überdenken. Da du vermutlich nur unter gängigen 32 Bit Systemen (Windows, Linux) programmierst, ist es dir bisher noch nicht auf die Füsse gefallen, da dort beide Typen zufälligerweise gleich gross sind. Aber selbst dort gibt es Probleme, da zB int vorzeichenbehaftet ist und SIZE_T nicht.</p>
<p>Phoemuex schrieb:</p>
<blockquote>
<ol start="2">
<li>Wo siehst du da einen cast?</li>
</ol>
</blockquote>
<p>hier</p>
<pre><code class="language-cpp">WriteProcessMemory(hWndAndreas,money,&amp;moni,sizeof(moni),(SIZE_T*)&amp;size);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1186281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186281</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Sun, 03 Dec 2006 14:21:03 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 14:26:23 GMT]]></title><description><![CDATA[<p>groovemaster schrieb:</p>
<blockquote>
<p>[...] und Casts sind nicht dazu da, solche Unsauberkeiten zu umgehen. [...]</p>
</blockquote>
<p>Ich bin noch nie ohne Casts ausgekommen, das liegt aber daran, dass es mindestens 10 verschiedene Typen gibt, die aber alle ein int sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186285</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 03 Dec 2006 14:26:23 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 14:38:06 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>Ich bin noch nie ohne Casts ausgekommen, das liegt aber daran, dass es mindestens 10 verschiedene Typen gibt, die aber alle ein int sind.</p>
</blockquote>
<p>Das ist aber ein Widerspruch in sich. Für ein Alias brauchst du keinen Cast. Und wenn du ohne Casts nicht auskommst, machst du irgendwas falsch. Ich tippe einfach mal darauf, dass deine Typstrategie nicht so wirklich passt. Casts braucht man in den seltensten Fällen, und oftmals auch nur, weil die verwendete API nicht ganz sauber ist. Aber das ist jetzt schon zu sehr Offtopic.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186291</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186291</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Sun, 03 Dec 2006 14:38:06 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 15:12:22 GMT]]></title><description><![CDATA[<p>Hast Recht, komme aber trotzdem nicht ohne Casts aus :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186309</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 03 Dec 2006 15:12:22 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 15:20:22 GMT]]></title><description><![CDATA[<p>Hi, hab mir jetzt einen passenden Quellcode zusammengebaut <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>Aber versthe noch nicht so ganz was Intern abläuft.</p>
<p>Könnte mir dass jemand erklären ??</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;
#include &lt;windows.h&gt;
#include &lt;iostream&gt;

using namespace std;

int main()
{
	int money = 10000;
	DWORD idAndreas;
	DWORD size = 4;

	unsigned adress = 0x00B7CE50;

	HWND hWndAndreas = FindWindow(NULL,&quot;GTA: San Andreas&quot;);

	if(hWndAndreas==NULL)
	{
		exit(2);
	}

    GetWindowThreadProcessId(hWndAndreas,&amp;idAndreas);

	HANDLE hProcAndreas = OpenProcess(PROCESS_ALL_ACCESS,false,idAndreas);

	WriteProcessMemory(hProcAndreas,(LPVOID)adress,&amp;money,sizeof(money),&amp;size);

	CloseHandle(hProcAndreas);

	printf(&quot;Money auf 10000 Gesetzt&quot;);

	Sleep(20000);
}
</code></pre>
<p>PS: Sollte in WinApi verschoben werden, passt besser :xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186315</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186315</guid><dc:creator><![CDATA[BlackNight007]]></dc:creator><pubDate>Sun, 03 Dec 2006 15:20:22 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 16:02:40 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Die genaue Erklärung steht doch hier:<br />
<a href="http://www.egocrew.de/programmierung/c_c_und_c/speicherzugriff_tutorial_teil_1" rel="nofollow">http://www.egocrew.de/programmierung/c_c_und_c/speicherzugriff_tutorial_teil_1</a></p>
<p>Aber eine andere Frage:<br />
Kann ich den Zugriff durch ein anderes Programm auch irgendwie verhindern?<br />
Welche nützlichen Programme verwenden eine solche externen Speicherzugriff<br />
oder sogar Speichermanipulation?</p>
<p>Gruß,<br />
*Cpp-Anfänger*</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186332</guid><dc:creator><![CDATA[*Cpp-Anfänger* 0]]></dc:creator><pubDate>Sun, 03 Dec 2006 16:02:40 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 16:33:28 GMT]]></title><description><![CDATA[<p><em>Cpp-Anfänger</em> schrieb:</p>
<blockquote>
<p>Welche nützlichen Programme verwenden eine solche externen Speicherzugriff<br />
oder sogar Speichermanipulation?</p>
</blockquote>
<p>Nunja, &quot;nützlich&quot; ist sicherlich ein recht interpretierbarer Begriff. Verwenden kann man sowas zB bei Spiele Bots. Oder vorstellbar wäre auch, eine recht effiziente Interprozesskommunikation damit zu realisieren. Obwohl es dafür sicherlich elegantere Wege gibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1186357</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186357</guid><dc:creator><![CDATA[groovemaster]]></dc:creator><pubDate>Sun, 03 Dec 2006 16:33:28 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Adresse zuweisen :) on Sun, 03 Dec 2006 17:02:29 GMT]]></title><description><![CDATA[<p>Irgendjemand hatte mal geschrieben, dass StyleXP es benutzt. Und irgendwo (CodeProject?) hatte ich mal ein Tutorial gesehen, das erklärt, wie man mit der Speichermanipulation das nervige 5-Sekunden-Warten ausstellen kann, wenn man im Explorer eine offene Datei löschen will.<br />
Sind ja 2 nützliche Beispiele, aber ich persönlich wage mich an sowas nicht ran, man will ja doch eine gewisse <em>Sicherheit</em> garantieren <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1186366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1186366</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 03 Dec 2006 17:02:29 GMT</pubDate></item></channel></rss>