You are not logged in.

  • Login

Dear visitor, welcome to Coder Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Thursday, February 12th 2009, 5:43pm

Datei kopieren

Hallo ich bräuchte Hilfe
Also ich möchte die Datei die gerade ausgeführt wird in einen anderen Ordner kopieren, wenn ich es mit Copy.File() mache hab ich danach auch die datei im Wunschordner, sie ist auch genauso groß wie die ursprungsdatei, aber ich kann sie nicht öffnen, da ich eine fehlermeldung bekomme

2

Thursday, February 12th 2009, 8:26pm

Hallo S_staX.

Um welche Datei handelt es sich da? Die Anwendung (exe) die auch die Datei kopieren soll?
Kannst du auch ein Codebeispiel posten, damit man sich ein besseres Bild von der Lage machen kann?

3

Thursday, February 12th 2009, 8:48pm

Die Datei soll sich selbst in ein bestimmtes Verzeichnis kopieren, mir ist aber gerade aufgefallen dass wenn ich in Visual Studio bin und dort das Prog debugge und ausführe, dann funktioniert es, starte ich jedoch die exe file aus dem debugg ordner erhalte ich ebenfalls einen fehler...

Edit: Problem gefunden... Lacht mich nicht aus, wenn ich das Programm debugge wird die datei verschoben und existiert dann im ordner wenn ich sie nun irgendwo anders öffne dann klappts nicht, weil die datei in dem angegebenen ordner schon existiert. Wie kann ich es machen, dass die datei einfach überschrieben wird?!

Edit2: Habs jetzt einfach mit File.Exists gemacht

Neue Frage wie kann ich die ausgeführte datei kopieren wenn der user den namen ändert bisher hab ichs so gemacht

C# Quellcode

1
2
3
4
5
6
7
8
9
10
//File kopieren!
            if(File.Exists("C:\\Timmä.exe"))
           {
               Console.WriteLine("File existiert");
           }
           else
           {
               File.Copy("timmä.exe", "C:\\Timmä.exe");
               Console.WriteLine("File nach C:\\Timmä.exe kopiert");
           }

also wie man sieht heißt die File im moment noch timmä.exe wenn der user die datei jetzt in lala.exe umbenennt bekomm ich wieder fehler


Edit 3: Kann man in c# mit umgebungsvariablen arbeiten?!

This post has been edited 3 times, last edit by "$_staX" (Feb 12th 2009, 9:34pm)


4

Friday, February 13th 2009, 5:57pm

Hallo $_staX

Ist doch eigentlich ganz logisch. Wenn du hardcoded Timmä.exe reinschreibst, dann kann er auch nur eine Datei kopieren, die so heißt.
Verwende doch in deinem Fall

C# Quellcode

1
Application.ExecutablePath;

Auszug aus der msdn:

Quoted

Ruft den Pfad einschließlich des Namens der ausführbaren Datei ab, die zum Starten der Anwendung verwendet wurde.


Hoffe das hilft dir weiter ;)

5

Friday, February 13th 2009, 6:05pm

Ist doch eigentlich ganz logisch. Wenn du hardcoded Timmä.exe reinschreibst, dann kann er auch nur eine Datei kopieren, die so heißt.


Das war mir schon klar ich hab ja nach ner Lösung gesucht die klappt, danke werd deine Lösung dann morgen ausprobieren.

Hab aber ein neues Problem und zwar soll mein Programm eine Datei von einem Ftp server downloaden, das klappt soweit auch ganz gut, sobald man aber das internet ausschaltet oder man nen proxy benutzt hängt sich das prog auf. Gibt es eine möglichkeit die internetverbindung solange zu testen bis eine connection steht?!

6

Saturday, February 14th 2009, 10:57am

Du kannst doch einfach einen Webserver anpingen.

Bzw. hier ein Snippet: http://www.codekeep.net/snippets/400f2b5…64bb72acc3.aspx

Similar threads

Social bookmarks