Dll im tiefsten Ordner des Computers verstecken
-
Montag, 2. Juli 2012 19:44
Hallo Programmierfreunde,
Wie die Überschrift schon sagt möchte ich eine erstellte Dll-Datei in irgendeinen Ordner auf dem Computer setzen. Wenn ich das mit System.IO.File.Copy machen würde, so wüsste das Programm aber nicht, wo die Dll-Datei versteckt ist. Angenommen ich tue die Dll-Datei in System32 verstecken. Mein Programm braucht die Dll-Datei, um My.settings und Namen von Buttons und Labels abrufen zu können. Wenn ich die Dll-Datei jetzt einfach mit System.IO.File.Copy (oder Create weiß gerade nicht, wie das heißt) setzen würde, so könnte das Programm die Dll-Datei nicht finden.
Villeicht könntet ihr mir so einen Code schicken, wo man dem Programm weiß macht das sich die Dll-Datei in System32 befindet.
Danke schonmal im vorraus
Mfg Michael Kossen
Alle Antworten
-
Montag, 2. Juli 2012 20:01
Hallo Michael,
Du willst _was_?
Warum sollte man eine Anwendungsdatei irgendwo verstecken wollen, wenn man nicht etwas böses im Schilde führt?
Generell brauchst Du Adminrechte um in den System32 Ordner schreiben zu können. Hat dein Programm diese bzw. wird die Anwendung als Administrator ausgeführt?
Warum sollte dein Programm die Datei nicht finden, wenn Du sie doch jetzt einfach nach System32 kopierst? Du weißt ja, wohin Du sie kopiert hast, also weißt Du auch, wo sie liegt. Dass dir das nicht bei deinem Versuch hilft, deine Assemblies zu verstecken, weil die DLL entweder bei der Anwendung oder im GAC liegen muss, damit Sie automatisch gefunden wird, ist mir zwar klar. Bevor ich dir da aber weitere Hinweise gebe, würde mich doch sehr interessieren, warum Du das so machen willst.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzMVP Montag, 2. Juli 2012 23:36
- Als Antwort markiert Robert BreitenhoferMicrosoft Contingent Staff, Moderator Montag, 30. Juli 2012 08:47
-
Mittwoch, 4. Juli 2012 15:48
Hallo Stefan,
Das gleiche, ob ich was "böses" vorhabe wurde mich auch schon in anderen Foren gefragt. Die Antwort ist ich habe natürlich nichts böses vor. Dann mach ich das einfach mitnem Installer, der die Dll-Datei dann ins System32 packt. Normal muss eine erstellte dll datei mit in dem Ordner sein, wo auch die EXE-Datei ist. Ich möchte aber, dass die Dll-Datei auch woanders (also nicht mit in dem Ordner, wo die EXE-Datei ist) sein kann und das Programm dann auch weiß, wo er die Dll-Datei auszulesen hat. Also mein Programm ließt diese Dll-Datei dann an einem anderen Ziel aus z.B. der EXE-Datei Ordner ist: C:\EXE_Datei, und der dll-DAtei Ordner ist: C:DLL_Datei. Solch einen Code/Funktion brauche ich, um dem Programm weißzumachen, dass sich die Dll-Datei unter dem und dem Ziel befindet.
Danke im Vorraus
-
Freitag, 6. Juli 2012 10:21
Wieso dann nicht einfach beim "installieren" der DLL einen Registry-Schlüssel hinterlassen mit dem Speicherort der DLL? Dann weiß man immer direkt, wo die ist. Die Adresse vom Registry-Schlüssel kann man ja so eindeutig wählen, dass sie nur für das Programm Sinn ergibt.
Im System32-Verzeichnis würde ich sie nur deponieren, wenn es irgendeinen Sinn ergibt, dass man sie dort weiter verwenden will, z.B. durch andere Programme oder spätere Versionen. Ansonsten müllt man den Kunden mMn nur die Systempartition voll ...
LG, Dennis.
- Als Antwort markiert Robert BreitenhoferMicrosoft Contingent Staff, Moderator Montag, 30. Juli 2012 08:48
-
Freitag, 6. Juli 2012 19:09Okay, wie erstellt man denn einen Registry eintrag?
-
Donnerstag, 26. Juli 2012 11:13Besitzer
Okay, wie erstellt man denn einen Registry eintrag?
Hallo MSTTTSZ24,
Schau Dir mal folgende Links an. Vielleicht können sie Dir weiterhelfen.
Registry-Zugriff unter VB .NET
Registry Eintrag hinzufügen und entfernen
Wenn Du mit .NET die Applikation schreibst, würde ich die Einstellungen nicht in die Registry schreiben, sondern in ein XML-File…oder besser lies folgendes: [Tutorial] Konfigurationsmodell im .NET Framework
Grüße,
Robert
Robert Breitenhofer, MICROSOFT

Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können. -
Montag, 30. Juli 2012 08:47Besitzer
Hallo MSTTTSZ24,
Ich gehe davon aus, dass die Antworten Dir weitergeholfen haben.
Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.Grüße,
RobertRobert Breitenhofer, MICROSOFT

Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

