DLLs platzieren
-
Hallo zusammen
Meine Frage ist jetzt nicht direkt WinAPI bezogen, aber hier hat es sicher Leute, die sich mit DLLs und deren Platzierung auskennen.
Nun, ich möchte eine Bibliothek in Form einer DLL nutzen. Ich möchte allerdings diese DLL nicht in den Projektordner haben, da sie auch von anderen benutzt werden soll.
Ich habe versucht diese DLL hier zu speichern: "C:\Windows\System32".
Doch auch nach dem Neustart wurde die DLL nicht gefunden.Etwas anderes, was ich versucht habe war die Modifikation der PATH Variable, damit sie auch auf den Ordner, wo die DLL liegt zeigt. Doch auch das hat nicht funktioniert.
Was muss ich bei diesen Varianten noch beachten, damit das funktioniert? Andere Applikationen scheinen das ja auch zu machen (das gleiche Projekt benutzt auch DirectX DLLs, welche auch nicht im Projektordner, sondern in System32 und die werden gefunden).
//EDIT
Habe auch das hier gefunden. Die Lösung ist zwar interessant, aber auch nicht das, was ich suche.
-
Möglicherweise interessant für dich: http://en.wikipedia.org/wiki/Side-by-side_assembly
-
C:\Windows\System32 muss gehen.
Evtl. hast Du nur nicht bedacht, dass Du ein 64bit OS hast und eine 32bit EXE/DLL.Siehe also: C:\Windows\SysWow64
BTW: PATH Muss auch gehen...
-
SysWow64 funktioniert. Danke.
PATH scheint auch zu gehen, wenn ich die Applikation aus dem Ordner starte. Wenn ich allerdings von Visual Studio aus starte, dann wird die DLL wieder nicht gefunden (war wohl auch der Grund, warum meine vorherigen versuche mit PATH fehlgeschlagen sind).
//EDIT:
Also PATH wäre meine präferierte Methode. Wenn also noch jemand Ideen hat. Nur zu. ^^//EDIT2:
Ahh.. Visual Studio scheint beim starten eine eigene Kopie von PATH zu machen. Nach dem Neustart von VS hats dann geklappt.