<?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[Wie DLL injekten ohne das sie im system oder process ordner liegt?]]></title><description><![CDATA[<p>Tag,<br />
Mal ne frage. Ich habe hier eine DLL die ich in einen fremden Process injekten möchte, aller dings muss ich die DLL dazu in das Verzeichnis packen von wo auch die .exe des fremden Processes gestartet wurde oder sie in das system/32 Verzeichnis packen. Gibt es eine Möglichkeit meine DLL zu injekten ohne sie in die Verzeichnise zu packen, also das ich sie einfach auf dem Desktop liegen hab?</p>
<p>gruß Tobi.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218689/wie-dll-injekten-ohne-das-sie-im-system-oder-process-ordner-liegt</link><generator>RSS for Node</generator><lastBuildDate>Sat, 04 Apr 2026 15:43:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218689.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 23 Jul 2008 18:26:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Wed, 23 Jul 2008 18:26:16 GMT]]></title><description><![CDATA[<p>Tag,<br />
Mal ne frage. Ich habe hier eine DLL die ich in einen fremden Process injekten möchte, aller dings muss ich die DLL dazu in das Verzeichnis packen von wo auch die .exe des fremden Processes gestartet wurde oder sie in das system/32 Verzeichnis packen. Gibt es eine Möglichkeit meine DLL zu injekten ohne sie in die Verzeichnise zu packen, also das ich sie einfach auf dem Desktop liegen hab?</p>
<p>gruß Tobi.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552601</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552601</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Wed, 23 Jul 2008 18:26:16 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Wed, 23 Jul 2008 22:32:28 GMT]]></title><description><![CDATA[<p>Ich hab ehrlich keine genaue Ahnung, aber wenn es ihm egal ist ob system32 oder der spezielle Ordner, klingt das wie ne Path Variable die irgendwo versteckt ist und die man, sofern man Nutzer des Rechners ist, editieren könnte. Wenn es um ein fremdes System geht klingt's mir eher nach &quot;nicht möglich&quot; denn das ganze sieht doch sehr nach ner Sicherheitsmassnahme aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552701</guid><dc:creator><![CDATA[LudiKalell]]></dc:creator><pubDate>Wed, 23 Jul 2008 22:32:28 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 02:06:30 GMT]]></title><description><![CDATA[<p>Diese Frage hat wohl nur garnix mit C++ zu tun und alles mit WinAPI.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552718</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552718</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Thu, 24 Jul 2008 02:06:30 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 06:08:40 GMT]]></title><description><![CDATA[<p>Das Setzen eines systemweiten Hooks (SetWindowsHookEx) mit einer Hook-Function in der DLL sorgt dafür, dass diese DLL von jedem User-Prozess im System geladen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552753</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552753</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 24 Jul 2008 06:08:40 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 08:54:00 GMT]]></title><description><![CDATA[<p>Hä? Habt ihr meine Frage net verstanden? Sorry, vieleicht ein wenig doof formuliert, werds einfach noch mal versuchen.</p>
<p>Also mal grafisch:</p>
<pre><code>(User Proc.)              (User DLL)
+--------------+          +------------+
|	          |          |	        |
| DLL -        |&lt;--------&gt;|  DLL       |
| Injector     |          |	        |
| 	         |          +------------+
+--------------+                ^
                                |
                                v
			            +--------------+
                        |              |
                        | Fremder Proc.|
                        |              |
                        +--------------+
</code></pre>
<p>Soweit is ja klar was ich machen will, aber das Problem ist, dass sich die DLL NUR injektzieren lässt, wenn sie im selbem Verzeichnis/Ordner liegt wie die .exe des fremden Prozesses, ODER sie liegt im system32 Verzeichnis.<br />
Meine Frage war, geht das injektzieren auch ohne das meine DLL im selbe Verzeichnis/Ordner liegt oder im system32 Ordner?</p>
<p>Gruß Tobi.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552860</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Thu, 24 Jul 2008 08:54:00 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 10:40:40 GMT]]></title><description><![CDATA[<p>T0bi schrieb:</p>
<blockquote>
<p>Hä? Habt ihr meine Frage net verstanden?</p>
</blockquote>
<p>Hast du meine Antwort nicht verstanden? <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>Auf oben beschriebene Art und Weise wird die DLL von jedem Prozess geladen, egal wo sie liegt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552935</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 24 Jul 2008 10:40:40 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 11:57:51 GMT]]></title><description><![CDATA[<p>Hm aber benutze ich SetWindowsHookEx net um so eher Keyboard hook ect mit WH_XXX zu setzen?</p>
<p>PS: Die DLL soll via' Remotethread geladen werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552973</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552973</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Thu, 24 Jul 2008 11:57:51 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 12:14:09 GMT]]></title><description><![CDATA[<p>Pfui pfui... <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>Es wird ganz einfach die Windows-Suchreihenfolge verwendet, wenn du keinen absoluten Pfad angibst.</p>
<p>Sprich (iirc) system32 -&gt; windows -&gt; system -&gt; %SYSTEMROOT% -&gt; Verzeichnis der Exe</p>
<p>Muss nicht stimmen. Du solltest mal die MSDN bzw. Google bemühen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552982</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552982</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 24 Jul 2008 12:14:09 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 12:26:12 GMT]]></title><description><![CDATA[<p>Sorry aber ich hab jetzt die Ausrede, dass ich die MSDN nicht aufrufen kann er lädt die seite net, kA wieso nicht.</p>
<p>Ich hab mich entschlossen nen Keyboard hook zu installieren fuer den process, dann brauch ich des net via Remote machen oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1552997</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1552997</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Thu, 24 Jul 2008 12:26:12 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 13:28:41 GMT]]></title><description><![CDATA[<p>Ok also ich habe mich fuer die Variante mit dem Keyboard hook entschieden ist wohl die einfachste <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="🙂"
    /><br />
Allerdings nervt mich jetzt eine Sache. Ich wollte die DLL dynamisch laden:</p>
<pre><code class="language-cpp">typedef BOOL (*fpInstallHook)( HWND, DWORD );
typedef BOOL (*fpUnistallHook)( );

    DWORD dwProcessThreadID = 0;
    HMODULE hModule = LoadLibrary( &quot;Direct3DHook.dll&quot; );

    fpInstallHook  inHook = (fpInstallHook)GetProcAddress( hModule, &quot;InstallHook&quot; );
    fpUnistallHook unHook = (fpUnistallHook)GetProcAddress( hModule, &quot;UnistallHook&quot; );

    HWND hWindow = FindWindow( 0, szWindowName );
    dwProcessThreadID = GetWindowThreadProcessId( hWindow, 0 );

    InstallHook( 0, dwProcessThreadID );
  //  inHook( 0, dwProcessThreadID );
    getchar( );
    UnistallHook( );
//    unHook( );
    FreeLibrary( hModule );
</code></pre>
<p>Allerdings, wenn ich sie dynamisch laden will, dann bekomme ich ne schicke Fehlermeldung die mir sagt, das meine Injector.exe eine access violation hat an der stelle 0xC0000005, sie kommt noch nicht einmal so weit den hook zu setzen. wenn ich die sache statisch abwickeln möchte funktioniert das.</p>
<p>Idden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553033</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553033</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Thu, 24 Jul 2008 13:28:41 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 13:43:20 GMT]]></title><description><![CDATA[<p>Das Setzen des Hooks erfolgt von außen. Du brauchst nur die Adresse der Hook-Funktion innerhalb der DLL.</p>
<p>Kommunizieren musst du mit der DLL z.B. über ein MemoryMappedFile, da die DLL natürlich in jedem Prozess neu geladen wird und sich damit auch keine Variablen etc teilen.</p>
<p>Deinen Code kannst du dann z.B. in den EntryPoint klatschen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553045</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 24 Jul 2008 13:43:20 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Thu, 24 Jul 2008 13:53:27 GMT]]></title><description><![CDATA[<p>Wieso kann mir ja auch einfach ein paar funktionen fuer die DLL schreiben, dann kann ich den shared bereich der dll nutzen, und die wparam, lparam infos kann ich auch auslesen bzw. sie werden mir an eine nachrich (WM_USER+2) gesendet.<br />
nur ists merkwürdig das statischen laden der dll geht und das dynamische net.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553055</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Thu, 24 Jul 2008 13:53:27 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Fri, 25 Jul 2008 05:28:52 GMT]]></title><description><![CDATA[<p>Ja ich kenne dein Problem, das ging mir damals beim ersten Versuch auch so.</p>
<p>Ohne Kenntnis deines Quellcodes kann man das aber nur schwer beantworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553321</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553321</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Fri, 25 Jul 2008 05:28:52 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Fri, 25 Jul 2008 10:16:24 GMT]]></title><description><![CDATA[<p>Hm nuja, ist ja eigentlich auch egal ob ich das im injector dynamisch oder statisch mache. Jetzt bräuchte ich hier mal hilfe <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><a href="http://www.c-plusplus.net/forum/viewtopic-var-p-is-1553125.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-p-is-1553125.html</a></p>
<p>Gruß Tobi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553466</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Fri, 25 Jul 2008 10:16:24 GMT</pubDate></item><item><title><![CDATA[Reply to Wie DLL injekten ohne das sie im system oder process ordner liegt? on Wed, 30 Jul 2008 11:09:53 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile-var-mode-is-viewprofile-and-u-is-403.html" rel="nofollow">HumeSikkins</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-15.html" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-4.html" rel="nofollow">WinAPI</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39405.html" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1556294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1556294</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Wed, 30 Jul 2008 11:09:53 GMT</pubDate></item></channel></rss>