<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[GetFileTime -&amp;gt; Liefert immer den selben Wert]]></title><description><![CDATA[<p>Grüsse zusammen,</p>
<p>Ich wollte feststellen, ob während dem benutzen meines Programmes, die Datei verändert wurde, welche ich geladen habe. Aber egal was ich mit der Datei anstelle, die Zeit bleibt immer die gleiche, welche ich hole. Folglich muss ich wohl irgendwo einen Fehler machen. Die Frage ist welcher?</p>
<pre><code class="language-cpp">#include &lt;Windows.h&gt;

#include &lt;iostream&gt;

int main()
{
	// Create file handle.
	HANDLE hFile = ::CreateFile(L&quot;./test.dat&quot;, FILE_READ_ATTRIBUTES, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);

	if(hFile != INVALID_HANDLE_VALUE)
	{
		// Get first time.
		FILETIME StartFileTime;
		::GetFileTime(hFile, NULL, NULL, &amp;StartFileTime);

		std::cout &lt;&lt; &quot;Modify the file now!&quot; &lt;&lt; std::endl;

		std::cin.clear();
		std::cin.sync();
		std::cin.get();

		// Modify file manually. (1)

		// Get second time.
		FILETIME NextFileTime;
		::GetFileTime(hFile, NULL, NULL, &amp;NextFileTime);

		// Output.
		std::cout &lt;&lt; &quot; Low: 1: &quot; &lt;&lt; StartFileTime.dwLowDateTime &lt;&lt; &quot;   2: &quot; &lt;&lt; NextFileTime.dwLowDateTime &lt;&lt; std::endl;
		std::cout &lt;&lt; &quot;High: 1: &quot; &lt;&lt; StartFileTime.dwHighDateTime &lt;&lt; &quot;   2: &quot; &lt;&lt; NextFileTime.dwHighDateTime &lt;&lt; std::endl;
	}
	else
	{ std::cout &lt;&lt; &quot;Error!&quot; &lt;&lt; std::endl; }

	std::cin.clear();
	std::cin.sync();
	std::cin.get();

	return 0;
}
</code></pre>
<p>Am Punkt (1) modifiziere ich die Datei von Hand mit einem Texteditor. Aber die Ausgabe von StartFileTime und NextFileTime ist genau die gleiche, als hätte sich die Datei nicht verändert.<br />
Wenn ich die Eigenschaften von der Datei über den Explorer aufrufe, dann zeigt es mir allerdings ganz klar eine Veränderung an.</p>
<p>Das Handle neu zu erstellen, nach dem die Datei verändert wurde, half auch nichts.</p>
<p>Wo ist mein Fehler?</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/215999/getfiletime-gt-liefert-immer-den-selben-wert</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 18:19:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/215999.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 18 Jun 2008 01:45:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 01:45:59 GMT]]></title><description><![CDATA[<p>Grüsse zusammen,</p>
<p>Ich wollte feststellen, ob während dem benutzen meines Programmes, die Datei verändert wurde, welche ich geladen habe. Aber egal was ich mit der Datei anstelle, die Zeit bleibt immer die gleiche, welche ich hole. Folglich muss ich wohl irgendwo einen Fehler machen. Die Frage ist welcher?</p>
<pre><code class="language-cpp">#include &lt;Windows.h&gt;

#include &lt;iostream&gt;

int main()
{
	// Create file handle.
	HANDLE hFile = ::CreateFile(L&quot;./test.dat&quot;, FILE_READ_ATTRIBUTES, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);

	if(hFile != INVALID_HANDLE_VALUE)
	{
		// Get first time.
		FILETIME StartFileTime;
		::GetFileTime(hFile, NULL, NULL, &amp;StartFileTime);

		std::cout &lt;&lt; &quot;Modify the file now!&quot; &lt;&lt; std::endl;

		std::cin.clear();
		std::cin.sync();
		std::cin.get();

		// Modify file manually. (1)

		// Get second time.
		FILETIME NextFileTime;
		::GetFileTime(hFile, NULL, NULL, &amp;NextFileTime);

		// Output.
		std::cout &lt;&lt; &quot; Low: 1: &quot; &lt;&lt; StartFileTime.dwLowDateTime &lt;&lt; &quot;   2: &quot; &lt;&lt; NextFileTime.dwLowDateTime &lt;&lt; std::endl;
		std::cout &lt;&lt; &quot;High: 1: &quot; &lt;&lt; StartFileTime.dwHighDateTime &lt;&lt; &quot;   2: &quot; &lt;&lt; NextFileTime.dwHighDateTime &lt;&lt; std::endl;
	}
	else
	{ std::cout &lt;&lt; &quot;Error!&quot; &lt;&lt; std::endl; }

	std::cin.clear();
	std::cin.sync();
	std::cin.get();

	return 0;
}
</code></pre>
<p>Am Punkt (1) modifiziere ich die Datei von Hand mit einem Texteditor. Aber die Ausgabe von StartFileTime und NextFileTime ist genau die gleiche, als hätte sich die Datei nicht verändert.<br />
Wenn ich die Eigenschaften von der Datei über den Explorer aufrufe, dann zeigt es mir allerdings ganz klar eine Veränderung an.</p>
<p>Das Handle neu zu erstellen, nach dem die Datei verändert wurde, half auch nichts.</p>
<p>Wo ist mein Fehler?</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531214</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531214</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 18 Jun 2008 01:45:59 GMT</pubDate></item><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 11:04:29 GMT]]></title><description><![CDATA[<p>Ich glaube du träumst gerade <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Wenn du nur FILE_SHARE_READ mitgibst kannst du die Datei garnicht verändert haben während das HANDLE offen war.<br />
-&gt; du hast eine andere Datei verändert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531435</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 18 Jun 2008 11:04:29 GMT</pubDate></item><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 11:57:17 GMT]]></title><description><![CDATA[<p>Hier stand mist ...</p>
<p>Es war wirklich die falsche Datei, könnte mich bitte jemand schlagen? ^^<br />
Tut mir leid, dass ich so dumm war ... ich könnte mich ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531493</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 18 Jun 2008 11:57:17 GMT</pubDate></item><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 13:06:29 GMT]]></title><description><![CDATA[<p>Dravere schrieb:</p>
<blockquote>
<p>könnte mich bitte jemand schlagen? ^^<br />
... ich könnte mich ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /><br />
Grüssli</p>
</blockquote>
<p>Aufrufe zu Gewalttätigkeiten werden grundsätzlich nicht beantwortet. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531570</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531570</guid><dc:creator><![CDATA[Elektronix]]></dc:creator><pubDate>Wed, 18 Jun 2008 13:06:29 GMT</pubDate></item><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 16:17:35 GMT]]></title><description><![CDATA[<p>Elektronix schrieb:</p>
<blockquote>
<p>Aufrufe zu Gewalttätigkeiten werden grundsätzlich nicht beantwortet. :p</p>
</blockquote>
<p>Hier bekommt man echt keine Hilfe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Ärgere mich jetzt noch ab dem Fehler. Weiss nicht mal wieso ich dieses zweite test.dat File überhaupt hatte. Und der Fehler hat mich so Zeit gekostet. Wollte es nämlich mit boost::filesystem::last_write_time lösen. Das lieferte mir das falsche Ergebnis, dachte dann, dass ich was falsche verstanden hatte, habe sogar die Mailingliste von Boost durchsucht. Dann den Quellcode angeschaut. Dann die MSDN durchgeschaut, die Sache nachgebaut ... usw.</p>
<p>Wir brauchen ein Smilie, welches seinen Kopf an die Wand schlägt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531732</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Wed, 18 Jun 2008 16:17:35 GMT</pubDate></item><item><title><![CDATA[Reply to GetFileTime -&amp;gt; Liefert immer den selben Wert on Wed, 18 Jun 2008 16:52:22 GMT]]></title><description><![CDATA[<p>Schliese die Datei erstmal, bevor Du gültige Werte bekommst... während dem die Datei offen ist, wird diese Zeit nicht aktualisiert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1531758</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1531758</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 18 Jun 2008 16:52:22 GMT</pubDate></item></channel></rss>