Timer
-
cout << "Wieder 10 Sekunden um." << endl;
fail
natürlich ms
-
-
Ja aber wo prüfe ich ob mein Beispiel.txt existiert oder weg ist ?
Wenn es weg ist sollte eine Meldung kommen.Ich weiß nicht wo genau ich das prüfe??
-
Ich sag mal so , wenn die datei existiert also wenn beispiel.txt da ist, sollte ich anfangen zu prüfen . Wenn ich bei der Prüfzeit sehe dass beispiel.txt verschwunden ist, dann sollte eine meldung kommen und das wars.
-
Versuch die Datei mit fOpen die Datei zum lesen zu öffnen.
Bekommst Du einen Nullpointer vom Typ FILE zurück. kannst Du nicht zugreifen.
Somit sollte Sie gelöscht sein.
Wenn der Pointer != NULL ist, Datei schliessen und wieder 10 sec warten.So würde ich die Datei überprüfen. Oder hast Du Probleme einen Timer zu erstellen?
Oli_1977
-
int ExistFile (CString fnam) { FILE * f= fopen (fnam,"r"); if (!f) return 0; else { fclose(f); // dann ging's. Also wieder zu damit return 1; } }
-
soll ich dann so was machen
#include <windows.h> #include <iostream> using namespace std; int main() { SYSTEMTIME st; ExistFile(irgendwas); while(true) { GetSystemTime(&st); if(st.wMilliseconds == 0 || st.wMilliseconds % 10 == 0) cout << "Wieder 10 Sekunden um." << endl; } }
ich habe die verbindung zwischen den code und Existfile nicht verstanden
-
hab die sache erledigt ,
Vielen Dank
-
Wiso benutzt du nicht WM_TIMER von Windows mit eine Intervall von 10ms wobei die 10ms denk ich eher zuviel des guten sind, aber egal. Ob das file Existiert kannst du doch ganz leicht mit
CFile::GetStatus(LPCTSTR lpszFileName,CFileStatus& rStatus);
rausfinden. Warum willst dfu in einer while auf dem File pollen, was soll das für ein programm werden? Soll das nur auf dem File pollen und sonnst nix machen?
-
Zudem man auch noch Events verwenden kann um zu prüfen ob sich im Dateisystem was ändert. (Directory Change Notifications).
Pollen ist in den meisten Fällen nur Ressourcen Verschwendung...