<?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[Probleme beim Verzeichnis-Überwachen]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich habe folgenden Loop:</p>
<pre><code class="language-cpp">HANDLE hChanges;
	DWORD dwWaitStatus;

	// szIncomingDirectory: Der zu überwachende Ordner
	// nSubDirectories: Aktiviert?
	hChanges = FindFirstChangeNotification(szIncomingDirectory, nSubDirectories, FILE_NOTIFY_CHANGE_FILE_NAME);

	if (hChanges == INVALID_HANDLE_VALUE)
	{
		// Ende!
		nRunning = FALSE;
		return;
	}

	// Die Hauptschleife
	while (true)
	{
		dwWaitStatus = WaitForSingleObject(hChanges, 500);

		if (dwWaitStatus == WAIT_OBJECT_0)
		{
			// Veränderungen am Ordner vornehmen
			Procedure(szIncomingDirectory);
		}
		else if (dwWaitStatus != WAIT_TIMEOUT)
			break;

		// Wenn nicht mehr benötigt, weg damit!
		if (nRunning == FALSE)
			break;
	}

	FindCloseChangeNotification(hChanges);
</code></pre>
<p>Das Problem ist nur, dass wenn ich änderungen per Procedure() vornehme, diese dann wieder ein WaitForSingleObject auslösen, da ja Veränderungen vorgenommen wurden.</p>
<p>Was ist mein Problem daran?</p>
<p>Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/215170/probleme-beim-verzeichnis-überwachen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 23:09:23 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/215170.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 07 Jun 2008 09:34:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme beim Verzeichnis-Überwachen on Sat, 07 Jun 2008 09:34:43 GMT]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich habe folgenden Loop:</p>
<pre><code class="language-cpp">HANDLE hChanges;
	DWORD dwWaitStatus;

	// szIncomingDirectory: Der zu überwachende Ordner
	// nSubDirectories: Aktiviert?
	hChanges = FindFirstChangeNotification(szIncomingDirectory, nSubDirectories, FILE_NOTIFY_CHANGE_FILE_NAME);

	if (hChanges == INVALID_HANDLE_VALUE)
	{
		// Ende!
		nRunning = FALSE;
		return;
	}

	// Die Hauptschleife
	while (true)
	{
		dwWaitStatus = WaitForSingleObject(hChanges, 500);

		if (dwWaitStatus == WAIT_OBJECT_0)
		{
			// Veränderungen am Ordner vornehmen
			Procedure(szIncomingDirectory);
		}
		else if (dwWaitStatus != WAIT_TIMEOUT)
			break;

		// Wenn nicht mehr benötigt, weg damit!
		if (nRunning == FALSE)
			break;
	}

	FindCloseChangeNotification(hChanges);
</code></pre>
<p>Das Problem ist nur, dass wenn ich änderungen per Procedure() vornehme, diese dann wieder ein WaitForSingleObject auslösen, da ja Veränderungen vorgenommen wurden.</p>
<p>Was ist mein Problem daran?</p>
<p>Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1524549</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1524549</guid><dc:creator><![CDATA[ViperBytes]]></dc:creator><pubDate>Sat, 07 Jun 2008 09:34:43 GMT</pubDate></item></channel></rss>