PlaySound in DLL funzt nicht
-
oder gibt es noch eine andere Möglichkeit wavs asynchron aus der ressource abzuspielen außer PlaySound? Ich finde es so hässlich nen Thread für PlaySound zu machen
-
Dir wurde bereits gesagt, dass man in DllMain nicht "alles" machen darf.
Dazu gehört eben auch PlaySound. Schon ganz und gar wenn diese DLL durch CreateRemoteThread geladen wird.Zudem: Warum spielst Du den Sound aus der anderen Anwendung. Das kanst Du auch in Deiner Anwednung machen. Den Unterschied hört der user nicht
-
Martin Richter schrieb:
Zudem: Warum spielst Du den Sound aus der anderen Anwendung. Das kanst Du auch in Deiner Anwednung machen. Den Unterschied hört der user nicht
Auch nicht, wenn er ein absolutes Gehör hat?
-
ich mache es nicht in DllMain sondern in einer Funktion die ich aufrufe. Und der loader injected nur schnell die dll und beendet sich dann mehr nicht das geht also nicht und ich will nicht den Prozess vom loader immer laufen haben
-
Beginner987 schrieb:
ich mache es nicht in DllMain sondern in einer Funktion die ich aufrufe.
Und wer ruft die Funktion auf? DllMain?
-
ne natürlich nicht, in DllMain ist ein return TRUE und die zuweisung an die hInstance, die Funktion ruft der loader auf. Mich wundert dass ohne async alles perfekt klappt und mit nicht
-
Wie rufst Du die Funktion aus dem Lader auf!
Zudem wnen der Lader in diesem Moment noch geladen ist, warum spielst Du nicht den Sound aus dem Lader, wie ich es schon gesagt habe.
Jetzt verstehe ich gar nichts mehr!
-
das ist der DLL Injection Code: http://wiki.hackerboard.de/index.php/DLL-Injection
und der Sound wird natürlich nicht sofort wenn die dll injected wird abgespielt, sondern erst etwas später. (Was aber nichts dran ändern würde, wenn ich es sofort als 1. Anweißung in der dll abspiele, klappt es auch nicht mit async)
-
.. schrieb:
das ist klar das dein Beispiel nicht geht, in DllMain darf man nichts machen was andere DLLs lädt.
... der größte quatsch, den ich je gelesen habe....
-
Na dann les mal...
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682583The entry-point function should perform only simple initialization or termination tasks. It must not call the LoadLibrary or LoadLibraryEx function (or a function that calls these functions),