Wie kann ich am besten ordner pfade kontrollieren?
-
hi,
kann man eigentlich irgendwie ordner pfade kontrollieren? wenn ich zum beispiel ein programm habe was immer mit fopen("c:\\hallo.txt") die datei c:\hallo.txt anlegt, kann ich es dann so umleiten dass die datei in c:\ordner\hallo.txt angelegt wird ohne das programm zu verändern? also so dass das program denkt die datei wäre bei c:\hallo.txt obwohl sie da in echt gar nicht existiert?
-
Kannst du das Ganze etwas praxis-/problembezogener beschreiben? Also was genau hast du vor und welches Betriebssystem nutzt du?
Btw: Das Wort schreibt sich Ordnerpfad, sofern man es denn verwenden möchte

-
Kein Mensch hindert Dich, den Dateinamen als Stringparameter zu veraendern, dynamisch zusammenzubauen, aus einer Umgebungsvariablen zu ziehen, oder sonst was. Ich sehe das Problem nicht.
-
Jaaajaaa, wenn Ordner Pfade beschreiten die sie nicht kennen..
Also wenn du einen statischen pfad angibst, wirst du auch nur auf diesen verweisen können.
Eine Lösung wäre, dir nen LAufwerk Y zu nehmen und dieses auf irgendeinen Pfad auf deiner Platte zeigen zu lassen. Dann kannst du über Y:\datei.txt irgendwo hinschreiben..
Ist aber blödsinn.
Hol dir doch einfach einen Pfad aus ner .ini-Datei und pack den vor deine hallo.txt und gut ist.
-

also geht das so nicht wie ich meinte? ich habe ja nicht den source code von den ganzen programmen, ich will zb verhindern das programme in einem ordner dateien anlegen können und will alle zugriffe auf den ordner auf einen anderen umleiten, am besten ohne die programme zu verändern, versteht ihr?
-
Willst du sowas hier:
- Anderes Programm läuft und erstellt dir immer den dummen ICQLite-Ordner im Daten-Homeverzeichnis statt im App-Homeverzeichnis, das willst du ändern
- Dein Programm läuft und kontrolliert wenn ICQ den Ordner aufruft und schiebt ihm einen ganz anderen Ordner unterSowas? Oder hab ich dich falsch verstanden?
MfG SideWinder
-
hi,
ja sowas meinte ich
-
Oh, sowas ist mit ANSI-C nicht möglich, da musst du uns dein Betriebssystem verraten.
Edit: C:\irgendwas deutet stark auf Windows hin
- ein Moderator wird dich bald ins WinAPI-Forum verschieben!MfG SideWinder
-
hallo
ok!
-
Ich weiss zwar nicht wer oder was "ICQLite" sein soll, aber ich vermute, dass dieses Programm eine Umgebungsvariable setzt, um sich "selber zu finden". Wenn das der Fall ist, koeentest also mit getenv diese Variable abfragen und daraus den Path oder das Arbeitsverzeichnis dieses Programmes herausfinden.
-
ICQLite ist ein Client für das ICQ-Protokoll. Es findet sich selbst überhaupt nicht (und wenn dann sicher nicht über eine Umgebungsvariable
) sondern legt unter %USERHOME%\Eigene Dateien einen Ordner an, normalerweise hätte man das aber gerne unter %USERHOME%\Application Data.Mit Umgebungsvariablen wird das nichts.
MfG SideWinder
-
Dieser Thread wurde von Moderator/in AJ aus dem Forum ANSI C in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Hi leute,
ich habe mal selber recherchiert. Ich glaube am besten geht es durch ändern des importabschnitts eines moduls? Ich habe da in einem meiner Bücher ein interessantes Beispiel zu entdeckt, ich denke ich bekomme es damit hin!!
-
Solltest du es schaffen berichte bitte, ich wäre daran interessiert ICQ abzuschießen

MfG SideWinder
-
Verwende doch Miranda ist viel schöner
