Laden...

Datei lesen, die ständig beschrieben wird

Erstellt von dercheffe vor 18 Jahren Letzter Beitrag vor 17 Jahren 2.799 Views
D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren
Datei lesen, die ständig beschrieben wird

Hi,
ich hab da ein Problem. Ich will mir ein kleines Programm schreiben welches Informationen auf einem LCD Display anzeigt. dafür will ich eine Log datei ( von dem Spiel Enemy territory) auslesen. Ich hab auch schon rumprobiert, bekomme aber immer diese exception, dass er also die datei nicht öffnen kann :

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, I
2 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions o
ons, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
at ConsoleApplication1.Program.print() in C:\Dokumente und Einstellungen....

hier der code soweit. als an windoof kanns ja nicht liegen da ich die datei mit dem editor öffnen kann:

private void print()
          {
              try
              {
                  DateTime oldtime = File.GetLastWriteTime("F:\\Wolfenstein - Enemy Territory\\etmain\\etconsole.log");
                  while (true)
                  {
                    StreamReader reader = new StreamReader(new FileStream("F:\\Wolfenstein - Enemy Territory\\etmain\\etconsole.log", FileMode.Open, FileAccess.Read)); // Datei öffnen
                          // for (int i = 0; -1 != reader.Peek(); i++) // Wenn Peek -1 zurückgibt ist die Datei fertiggelesen
                      if (File.GetLastWriteTime("F:\\Wolfenstein - Enemy Territory\\etmain\\etconsole.log") != oldtime)
                      {
                          string zeile = "";
                          DateTime time = File.GetLastWriteTime("F:\\Wolfenstein - Enemy Territory\\etmain\\etconsole.log");
                          for (int i = 0; -1 != reader.Peek(); i++) // Wenn Peek -1 zurückgibt ist die Datei fertiggelesen
                          {
                              zeile = reader.ReadLine();
                           } //Ich will immernur die letzte zeile überprüfen
                            if (zeile.Contains("Thompson"))
                          {
                              Console.WriteLine(time);
                          }
                          oldtime = time;
                      }
                        reader.Close();
                        Thread.Sleep(10);
                  }
                }
              catch (FileNotFoundException exc)

naja, kann mir jemand sagen wie ich die datei lesen kann ???

danke
christoph

N
750 Beiträge seit 2004
vor 18 Jahren

schreib mal vor allen pfad angaben die du benutzt ein "@"

z.b.:
DateTime oldtime = File.GetLastWriteTime(@"F:\Wolfenstein - Enemy Territory\etmain\etconsole.log");

//edit:
schade fettschrift geht nicht innerhalb der code-tags 🙁

//edit 2:
backslashes waren acuh verschwunden X(

?( wer suchet, der findet auch! :]

S
8.746 Beiträge seit 2005
vor 18 Jahren

Leider hast du die Exception abgeschnitten. Dann wäre noch ganz interessant, wo genau die Exception kommt, weil du ja mindestens zwei verschiedene Fileoperationen machst: GetLastWriteTime() und FileStream-Konstruktion.

*EDIT* Nicht richtig gelesen, der Konstruktor ist das Problem.....

Ich hab mal nen bißchen getestet. Man kann problemlos offene Files lesen, sofern die schreibende Anwendung die richtigen FileShare-Flags gesetzt hat. Sobald dort "None" (keine Sharing) angegeben ist, wirft sowohl .NET als auch der NotePad eine entsprechende Fehlermeldung. Insofern bestimmt dein Game, ob du die Datei lesen kannst, offenbar nicht.

Das Ganze kannst du überwachen, indem du FileMon.exe von www.sysinternals.com einsetzt und schaust, was genau dein Spiel macht. Dort siehst du die Share-Flags und kannst erkennen, ob du überhaupt eine Chance hast das File zu lesen.

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

also er schmeißt die exception bei

StreamReader reader = new StreamReader(new FileStream("F:\\Wolfenstein - Enemy Territory\\etmain\\etconsole.log", FileMode.Open, FileAccess.Read)); // Datei öffnen

scheinbar sind die flags schon gut gesetzt, da ich ja mit notepad und editor das file öffnen und lesen kann. X(

S
8.746 Beiträge seit 2005
vor 18 Jahren

Und wie ist der genau Wortlaut der Exception? Ist F: ein Netzlaufwerk?

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

hier die komplette exception:
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, I
nt32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions o
ptions, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
at ConsoleApplication1.Program.print() in C:\Dokumente und Einstellungen\Chri
stoph\Eigene Dateien\Visual Studio 2005\Projects\ConsoleApplication1\ConsoleAppl
ication1\Program.cs:line 31
Drücken Sie eine beliebige Taste . . .

f: ist eine normale partition, wenn ich das spiel nicht laufen habe geht die methode auch. ist sehr komisch

S
8.746 Beiträge seit 2005
vor 18 Jahren

Schon wieder keine Exception...... nur das Pfad des Auftretens.....

Ansonsten, überprüfe dein Game via FileMon.exe!

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

ok, dann tuts mir leid, wie bekomm ich denn die exception? bin normal java programmierer, und da geht des mit .printStackTrace

S
8.746 Beiträge seit 2005
vor 18 Jahren

**System.NullReferenceException: Object reference not set to an instance of an object.\r\n **at ConsoleApplication44.Class1.Main(String[] args) in d:\.net projekte\consoleapplication44\class1.cs:line 21"

Bekommst du mit ToString()

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

System.IO.IOException: The process cannot access the file 'F:\Wolfenstein - Enem
y Territory\etmain\etconsole.log' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, I
nt32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions o
ptions, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
at ConsoleApplication1.Program.print() in C:\Dokumente und Einstellungen\Chri
stoph\Eigene Dateien\Visual Studio 2005\Projects\ConsoleApplication1\ConsoleAppl
ication1\Program.cs:line 31
Drücken Sie eine beliebige Taste . . .

dann diese 🙁

S
8.746 Beiträge seit 2005
vor 18 Jahren

Probier mal:

StreamReader reader = new StreamReader(new FileStream("F:\Wolfenstein - Enemy Territory\etmain\etconsole.log", FileMode.Open, FileAccess.Read, FileShare.Read))

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

danke, aber geht auch nicht. das ist wirklich sehr seltsam

S
8.746 Beiträge seit 2005
vor 18 Jahren

Dann bleibt nur noch der Analyse-Weg via FileMon.exe!

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

ok, habs mal gesaugt, seh komisches tool
hier für die etconsole.log, ich denke des wiederholt sich ständig:

16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS Options: Open Access: All
16:30:29 explorer.exe:1944 QUERY INFORMATION F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS FileStreamInformation
16:30:29 explorer.exe:1944 QUERY INFORMATION F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS FileBasicInformation
16:30:29 explorer.exe:1944 READ F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS Offset: 0 Length: 24
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Raec25ph4sudbf0hAaq5ehw3Nf:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 CLOSE F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS Options: Open Access: All
16:30:29 explorer.exe:1944 QUERY INFORMATION F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS FileStreamInformation
16:30:29 explorer.exe:1944 QUERY INFORMATION F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS FileBasicInformation
16:30:29 explorer.exe:1944 READ F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS Offset: 0 Length: 24
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Raec25ph4sudbf0hAaq5ehw3Nf:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:{4c8cc155-6c1e-11d1-8e41-00c04fb9386d}:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:DocumentSummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_DocumentSummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:DocumentSummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_DocumentSummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_OzngklrtOwudrp0bAayojd1qWh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Epgykx0vJecku24w1vbvh5k2Nh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_Epgykx0vJecku24w1vbvh5k2Nh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Epgykx0vJecku24w1vbvh5k2Nh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_Epgykx0vJecku24w1vbvh5k2Nh:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_BnhqlkugBim0elg1M1pt2tjdZe:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_PebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_CpdjxwbhN2qzewcmQpca1lvyXc:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_SummaryInformation:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 OPEN F:\Wolfenstein - Enemy Territory\etmain\etconsole.log:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA NOT FOUND Options: Open Access: All
16:30:29 explorer.exe:1944 CLOSE F:\Wolfenstein - Enemy Territory\etmain\etconsole.log SUCCESS

16:30:31.390 ET.exe:1316 WRITE F:\WOLFEN1\etmain\etconsole.log SUCCESS Offset: 754803 Length: 70
16:30:31.390 ET.exe:1316 WRITE F:\WOLFEN
1\etmain\etconsole.log SUCCESS Offset: 754873 Length: 1
16:30:31.593 ET.exe:1316 WRITE F:\WOLFEN~1\etmain\etconsole.log SUCCESS Offset: 754874 Length: 28

so richtig??? ich hab keine ahnung was du davon brauchen kannst.

S
8.746 Beiträge seit 2005
vor 18 Jahren

Dummerweise nix, weil er die FileShare-Flags nicht rausreicht. Tja, bin ratlos. Wenn der Editor das File lesen kann, sollte es m.E. nach auch dein Code können. Keine Ahnung warum es nicht klappt.

D
dercheffe Themenstarter:in
8 Beiträge seit 2005
vor 18 Jahren

danke, für deine hilfe!!! 👍 👍

ich hatte grad noch ne idee, und die funktioniert sogar. ich kopiere das file einfach(was komischerweise geht 😁 ) und das kopierte file kann ich lesen. wenn des mein prof sehn würd, würde er mich glaub erschlagen, aber naja 😜

S
8.746 Beiträge seit 2005
vor 18 Jahren

Alles sehr mysteriös.... 😉

N
750 Beiträge seit 2004
vor 18 Jahren

ich schließe mal daraus, da ihr sehr ausführlich über die zugriffsflags diskutiert, das meine idee mit dem "@" total daneben war X(

?( wer suchet, der findet auch! :]

4.506 Beiträge seit 2004
vor 18 Jahren

Hallo Nils!

Du hast selbst erkannt, dass inerhalb der Code-Tags die doppelten Backslashes durch eines ersetzt werden.

Dies ist hier auch der Fall gewesen, so dass ein @ überhaupt keine Änderung bewirkt hätte, da dercheffe's Originalcode die doppelten Backslashes enthält.

Aber prinzipiell würd ich bei Pfadangaben auch mit dem @ arbeiten, da mich die doppelten B-Slashes schon in C und C++ genervt haben 😉

Ciao
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”

N
750 Beiträge seit 2004
vor 18 Jahren

hallo norman_timo,

ja da hast du natürlich recht, da hätte ich auch selber drauf kommen können.
vor allem weil ich es schon selbst erkannt hatte...... 😭

Gruß
Nils

?( wer suchet, der findet auch! :]

1.820 Beiträge seit 2005
vor 17 Jahren

Hallo!

Obwohl der Thread schon etwas älter ist, hier noch ein Nachtrag von mir:
Ich hatte dasselbe Problem, und habe es auch nicht direkt lösen können, weder mit den FileShare-Attributen noch mit Hilfe von FileIOPermission. Der einzig funktionierende WorkAround ist das vorherige Kopieren der Datei in eine temporäre Datei, was seltsamerweise funktioniert.

Daher vermute ich, dass diese .NET-FileShare-Angaben nur den nachträglichen (!) Zugriff auf die Datei regeln sollen, aber nicht den vorherigen, also da vollen Zugriff auf die Datei nehmen wollen.

Nobody is perfect. I'm sad, i'm not nobody 🙁

B
1.529 Beiträge seit 2006
vor 17 Jahren

Daher vermute ich, dass diese .NET-FileShare-Angaben nur den nachträglichen (!) Zugriff auf die Datei regeln sollen, aber nicht den vorherigen, also da vollen Zugriff auf die Datei nehmen wollen. steht so auch in der MSDN Lib.

Die endgültige Lösung für dieses Problem nennt sich Volumenschattenkopie (volume shadow copy). Dabei werden von Windows ab dem Zeitpunkt der Erstellung alle Schreibzugriffe auf das Dateisystem virtualisiert.

C
366 Beiträge seit 2005
vor 17 Jahren

Ich habe gerade das selbe Problem.
Ich muss aus einer Datei lesen, in die zur gleichen Zeit auch geschrieben wird.
Gelesen wird dabei immer an einer Stelle, wo schon "lange" geschrieben wurde, also müsste es theoretisch funktionieren.

Ich bekomme allerdings bei FileShare.xxx immer eine Zugriff-Verweigert-Exception und wenn ich über den gleichen Stream (mit FileOptions.WriteThrough) lese und schreibe, wird nichts gelesen...

Kann mir da jemand helfen, denn kopieren und dann lesen geht bie mir nicht, da das zu langsam bzw. zu "Anstrengung" für die HDD ist?

B
1.529 Beiträge seit 2006
vor 17 Jahren

Aber wenn du doch selbst in die Datei schreibst, kannst du die zu schreibenden Daten doch einfach weiterleiten...

C
366 Beiträge seit 2005
vor 17 Jahren

Original von Borg
Aber wenn du doch selbst in die Datei schreibst, kannst du die zu schreibenden Daten doch einfach weiterleiten...

Eben nicht, da die Klasse, welche die Daten weiterverarbeitet eine Datei haben will (kommt nicht von mir, die Klasse)...

B
1.529 Beiträge seit 2006
vor 17 Jahren

Dann musst du dieser Klasse auch eine Datei geben. Und da du ja nicht weisst, wie die Klasse mit der Datei umgeht (komplett laden oder in Stücken), kannst du auch nicht mit Sicherheit sagen, ob die Datei mit einer noch nicht geschlossenen Datei klar kommt. So könnte es zum Beispiel sein, dass die Klasse am Anfang die Dateigröße ermittelt und dann mit diesem Wert arbeitet. Oder dass die Klasse Speicher für diese Dateigröße reserviert und dann die ganze Klasse einlesen will. Beim ersten gibt es Fehler, beim zweiten eine Exception.

Du wirst dein Problem nicht lösen können. Wenn die Klasse nichts anderes unterstützt (z. Bsp. einen Stream), wirst du wohl erst die Datei fertig schreiben und ihr dann übergeben müssen.