Laden...

Einem Programm die "Eigenen Dateien" vortäuschen

Erstellt von sbertl000 vor 17 Jahren Letzter Beitrag vor 17 Jahren 3.356 Views
sbertl000 Themenstarter:in
822 Beiträge seit 2005
vor 17 Jahren
Einem Programm die "Eigenen Dateien" vortäuschen

Hy

Ich bin gerade dabei ein Programm portable zu machen. Dieses Programm legt in den Eigenen Dateien einen Datenordner an.

Ich will diesem Programm die Eigenen Dateien irgendwie vortäuschen, sodass das Programm die Dateien an einem anderen, von mir bestimmten Ort ablegt.

Habt ihr da eine Idee?

sbertl

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo sbertl000,

hm, ich denke das geht nicht, wenn das Programm selber keine Möglichkeit bietet, den Speicherort zu beeinflussen. Du kannst höchstens den Ordner für Eigene Dateien global umstellen (ich glaube mit TweakUI geht das; ansonsten direkt über die Registry).

herbivore

sbertl000 Themenstarter:in
822 Beiträge seit 2005
vor 17 Jahren

Ok, trotzdem danke...

sbertl

S
20 Beiträge seit 2007
vor 17 Jahren

Mit

System.IO.Directory.SetCurrentDirectory(string path)

kannst du das aktuelle Arbeitsverzeichnis deines Programmes ändern. Somit kannst du in einem bestimmten Verzeichnis deine Daten abspeichern.

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Strauss,

er will ja, dass das andere Programm die Daten in einem bestimmten Verzeichnis speichert. Und das scheint wohl nicht ins CurrentDirectory, sondern nach Eigene Dateien zu speichern.

herbivore

B
1.529 Beiträge seit 2006
vor 17 Jahren

Nur der Vollständigkeit halber:

Du kannst höchstens den Ordner für Eigene Dateien global umstellen (ich glaube mit TweakUI geht das; ansonsten direkt über die Registry).

Zumindest bei XP kann jeder User seine Eigenen Dateien über ihre Eigenschaften verschieben.

Ansonsten würde das ganze nur über Hooks gehen, wobei man hierbei den Bereich von .NET verlässt.

S
20 Beiträge seit 2007
vor 17 Jahren

Mit System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) kann man in einer Anwendung des "Eigene Dateien"-Ordners auf dem Rechner bestimmen.

Gelöschter Account
vor 17 Jahren

Original von Strauss
Mit System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) kann man in einer Anwendung des "Eigene Dateien"-Ordners auf dem Rechner bestimmen.

auslesen jedoch nciht bestimmen.

zudem ist es nicht sein programm. er möchte in anders wahrscheinlich bereits compaliertes programm portabel machen.

C
1.214 Beiträge seit 2006
vor 17 Jahren

Das bringt mich auch auf eine Idee... Sowas könnte man recht einfach mit Hooks realsieren. Gibt es vielleicht schon irgendwelche fertigen Programme, die so eine Art Sandbox erstellen, und mit denen man bestimmte Regeln definieren kann, z.B. wenn ein Programm die Funktion aufruft, dann soll dies und jenes geschehen, z.B. einen bestimmten. anderen Wert zurückgeben. Ein Projekt, dass in die Richtung geht wurde mal in der c´t vorgestellt, das ist schon länger her, ich glaub das hiess "Sandkastenspiele". Das ist allerdings nicht ganz so flexibel, wie ich mir das vorstelle.

Gelöschter Account
vor 17 Jahren

das hat borg schon vorgeschlagen

C
1.214 Beiträge seit 2006
vor 17 Jahren

Ja, ich weiss das Borg das vorgeschlagen hat 😉
Das war allerdings nicht meine Frage. Ich wollt nur wissen, ob jemand solche Programme kennt.

R
317 Beiträge seit 2006
vor 17 Jahren

Original von Coder007
Ja, ich weiss das Borg das vorgeschlagen hat 😉
Das war allerdings nicht meine Frage. Ich wollt nur wissen, ob jemand solche Programme kennt.

http://www.sandboxie.com/
http://www.altiris.com/Products/SoftwareVirtualizationSolution.aspx

😉
sind zumindestens laut wikipedia recht gut 🙂

C
1.214 Beiträge seit 2006
vor 17 Jahren

Interessant, danke. Vor allem das zweite hört sich recht nützlich an.