<?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[Process32First&#x2F;Process32Next - Alternativen?!]]></title><description><![CDATA[<p>Ich habe das Problem das mein aktuelles Projekt sowohl unter Windows NT4 (SP6) als auch Windows 2000 laufen soll. Nun wollte ich mit &quot;<strong>CreateToolhelp32Snapshot</strong>&quot; die aktuellenProzesse durhclaufen um nach einer Bestimmten Caption zu suchen. Das Problem ist das laut Msdn, bzw auch einem angezeigten Fehler, kein Einstiegspunkt für &quot;Process32First&quot; bzw. &quot;Process32Next&quot; in der kernel32.lib gefunden wird. Liegt das jetz an NT4 oder habe ich irgendwas vergessen. (eingebunden ist der header für die Tool Helper Library[tlhelp32.h]).</p>
<p>Wenn NT4 das nicht unterstützen sollte gibt es vielleicht alternativen für diese Funktionen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/84622/process32first-process32next-alternativen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 23:25:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/84622.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 01 Sep 2004 07:19:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 07:19:58 GMT]]></title><description><![CDATA[<p>Ich habe das Problem das mein aktuelles Projekt sowohl unter Windows NT4 (SP6) als auch Windows 2000 laufen soll. Nun wollte ich mit &quot;<strong>CreateToolhelp32Snapshot</strong>&quot; die aktuellenProzesse durhclaufen um nach einer Bestimmten Caption zu suchen. Das Problem ist das laut Msdn, bzw auch einem angezeigten Fehler, kein Einstiegspunkt für &quot;Process32First&quot; bzw. &quot;Process32Next&quot; in der kernel32.lib gefunden wird. Liegt das jetz an NT4 oder habe ich irgendwas vergessen. (eingebunden ist der header für die Tool Helper Library[tlhelp32.h]).</p>
<p>Wenn NT4 das nicht unterstützen sollte gibt es vielleicht alternativen für diese Funktionen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596628</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 07:19:58 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 09:00:38 GMT]]></title><description><![CDATA[<p>WinNT4 kennt diese Befehle nicht, steht auch in der MSDN.<br />
EnumProcesses gibt es auch unter WinNT4</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596729</guid><dc:creator><![CDATA[ScriptGod]]></dc:creator><pubDate>Wed, 01 Sep 2004 09:00:38 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 09:14:26 GMT]]></title><description><![CDATA[<p>Könntest du mir vielleicht ein Beispiel geben wie ich mit EnumProcesses umgehe?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596735</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 09:14:26 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 09:46:33 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">DWORD PIDs[ 4096 ];
	DWORD nBytesNeeded = 0;
	EnumProcesses( PIDs, sizeof( PIDs ), &amp;nBytesNeeded );
	for( DWORD n = 0; n &lt; nBytesNeeded / sizeof( DWORD ); n++ )
	{
		CHAR szNameBuffer[ MAX_PATH ] = { 0 };

		HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, false, PIDs[ n ] );
		if( hProcess )
		{
			GetModuleFileNameEx( hProcess, NULL, szNameBuffer, sizeof( szNameBuffer ) );
			CloseHandle( hProcess );
		}

		printf( &quot;%u - %s\n&quot;, PIDs[ n ], szNameBuffer );
	}
</code></pre>
<p><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/perfmon/base/enumerating_all_modules_for_a_process.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/perfmon/base/enumerating_all_modules_for_a_process.asp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/596752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596752</guid><dc:creator><![CDATA[ScriptGod]]></dc:creator><pubDate>Wed, 01 Sep 2004 09:46:33 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 11:37:29 GMT]]></title><description><![CDATA[<p>der geheimtip lautet 'NtQuerySystemInformation'<br />
ursprünglich eine m$-interne funktion, wurde aber so oft verwendet, dass mickrichweich sich gezwungen sah, es teilweise zu dokumentieren.<br />
guckst du: <a href="http://cmp.phys.msu.su:8000/ntclub/zip/Hmz.zip" rel="nofollow">http://cmp.phys.msu.su:8000/ntclub/zip/Hmz.zip</a><br />
und da die datei 'sysinf.cpp'</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596864</guid><dc:creator><![CDATA[net 0]]></dc:creator><pubDate>Wed, 01 Sep 2004 11:37:29 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:24:01 GMT]]></title><description><![CDATA[<p>hm very nice,... danke! <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>
]]></description><link>https://www.c-plusplus.net/forum/post/596936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596936</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:24:01 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:28:09 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">SYSINF.OBJ : error LNK2001: Nichtaufgeloestes externes Symbol _NtOpenThread@16
SYSINF.OBJ : error LNK2001: Nichtaufgeloestes externes Symbol _NtClose@4
SYSINF.OBJ : error LNK2001: Nichtaufgeloestes externes Symbol _NtQuerySystemInformation@16
</code></pre>
<p>hm, irgendwie dann auch wieder nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> oder bin ich zu blöd?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596943</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:28:09 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:48:17 GMT]]></title><description><![CDATA[<p>MSDN schrieb:</p>
<blockquote>
<p>This function has no associated import library. You must use the LoadLibrary and GetProcAddress functions to dynamically link to Ntdll.dll</p>
</blockquote>
<p>Hattu gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596967</guid><dc:creator><![CDATA[Hepi]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:48:17 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:51:05 GMT]]></title><description><![CDATA[<p>die ntdll, gehört zu platform sdk kann das sein?<br />
das isb problem die is auf dem rechner hier nicht drauf,....</p>
<p>[edit] zu mindest die passende *.lib</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596970</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:51:05 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:55:20 GMT]]></title><description><![CDATA[<p>Wieso die passende LIB?</p>
<p>Es gibt keine!</p>
<p>Steht doch da:<br />
<strong>This function has no associated import library. You must use the LoadLibrary and GetProcAddress functions to dynamically link to Ntdll.dll</strong></p>
<p>Laut MSDN brauchst Du dafür:<br />
Requirements<br />
Client: Requires Windows XP or Windows 2000 Professional.<br />
Server: Requires Windows 2000 Server.</p>
<p>Also gehört die Ntdll.dll zum Lieferumfang der oben angeführten Betriebssysteme...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596972</guid><dc:creator><![CDATA[Hepi]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:55:20 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:54:20 GMT]]></title><description><![CDATA[<p>ok dann sollte das nicht zu dem thread passen da ich gesagt habe das die os unter der das programm laufen soll nt4 und 2000 sind. nur wenn ich hier unter nt4 progge dann nützt mir das alles nix...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/596976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596976</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:54:20 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 12:57:46 GMT]]></title><description><![CDATA[<p>ScriptGod schrieb:</p>
<blockquote>
<pre><code class="language-cpp">DWORD PIDs[ 4096 ];
	DWORD nBytesNeeded = 0;
	EnumProcesses( PIDs, sizeof( PIDs ), &amp;nBytesNeeded );
	for( DWORD n = 0; n &lt; nBytesNeeded / sizeof( DWORD ); n++ )
	{
		CHAR szNameBuffer[ MAX_PATH ] = { 0 };

		HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, false, PIDs[ n ] );
		if( hProcess )
		{
			GetModuleFileNameEx( hProcess, NULL, szNameBuffer, sizeof( szNameBuffer ) );
			CloseHandle( hProcess );
		}

		printf( &quot;%u - %s\n&quot;, PIDs[ n ], szNameBuffer );
	}
</code></pre>
<p><a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/perfmon/base/enumerating_all_modules_for_a_process.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/perfmon/base/enumerating_all_modules_for_a_process.asp</a></p>
</blockquote>
<p>und das kann ich dann nur mit der platform sdk, weil dazu brauch ich eine &quot;psapi.h&quot; un die gibts nur in der P.SDK die is hier nich drauf <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/596983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/596983</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Wed, 01 Sep 2004 12:57:46 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Wed, 01 Sep 2004 17:27:17 GMT]]></title><description><![CDATA[<p>Die Dateien psapi.h, psapi.lib sollten beim SDK dabei sein. Kannst auch LoadLibrary und GetProcAddress benutzen um das Nutzen zu können. NtQuerySystemInformation ist auch keine schlechte Alternative</p>
]]></description><link>https://www.c-plusplus.net/forum/post/597191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/597191</guid><dc:creator><![CDATA[ScriptGod]]></dc:creator><pubDate>Wed, 01 Sep 2004 17:27:17 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Thu, 02 Sep 2004 07:28:45 GMT]]></title><description><![CDATA[<p>NtQuerySystemInformation benötigt aber die ntdll.dll und die liegt bei NT4 leider nicht dabei.</p>
<p>Frage zu SDK, wenn ich die Platform SDK hier auf dem Rechner habe, läuft das Programm dann auch auf einem Rechner ohne diese SDK?</p>
<p>[edit] weil so wie es aussieht werde ich nicht drum rum kommen die platform sdk zu installieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/597543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/597543</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Thu, 02 Sep 2004 07:28:45 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Thu, 02 Sep 2004 11:08:11 GMT]]></title><description><![CDATA[<p>sToRkka schrieb:</p>
<blockquote>
<p>NtQuerySystemInformation benötigt aber die ntdll.dll und die liegt bei NT4 leider nicht dabei.</p>
</blockquote>
<p>ntdll.dll ist seit nt 3.1 dabei. was du suchst ist die 'ntdll.lib'. die ist bestandteil des ddk's (nicht sdk). mit ein bisschen geduld und 'google' kann man diese lib sicher im internet irgendwo finden oder mal emule bemühen etc. ausserdem gibt es tools, die aus dll's import-libraries generieren können (ich glaub' bei borland und bei lcc ist sowas dabei). zur not gehen aber auch 'GetModuleHandle', 'GetProcAddress' und function pointers.</p>
<p>ein beispiel, wie man 'NtQuerySystemInformation' ohne lib nutzt findest du hier: <a href="http://www.chapeaux-noirs.org/win/uptime.c" rel="nofollow">http://www.chapeaux-noirs.org/win/uptime.c</a></p>
<p>btw: 'LoadLibrary' ist unnötig bei ntdll.dll, weil _jeder_ prozess die schon geladen hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/597694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/597694</guid><dc:creator><![CDATA[net 0]]></dc:creator><pubDate>Thu, 02 Sep 2004 11:08:11 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Thu, 02 Sep 2004 12:45:07 GMT]]></title><description><![CDATA[<p>sToRkka schrieb:</p>
<blockquote>
<p>Frage zu SDK, wenn ich die Platform SDK hier auf dem Rechner habe, läuft das Programm dann auch auf einem Rechner ohne diese SDK?<br />
weil so wie es aussieht werde ich nicht drum rum kommen die platform sdk zu installieren.</p>
</blockquote>
<p>Ja, das ist doch eigentlich auch der Normalfall - andernfalls würde ja keine Software bei Usern ohne PSDK laufen <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 />
BTW: Die Sachen die z.B. bei VC++ 6 dabei sind, sind ja auch schon Teile des SDK - nur eben veraltet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/597835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/597835</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Thu, 02 Sep 2004 12:45:07 GMT</pubDate></item><item><title><![CDATA[Reply to Process32First&#x2F;Process32Next - Alternativen?! on Fri, 03 Sep 2004 10:12:18 GMT]]></title><description><![CDATA[<p>net schrieb:</p>
<blockquote>
<p>was du suchst ist die 'ntdll.lib'.</p>
</blockquote>
<p>ja ok die meinte ich eigentlich auch <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>hab jetz glücklicher weise auch die psapi.h auf meiner msdn cd gefunden, und mit EnumProcesses geht das gut!</p>
<p>DANKE! <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>
]]></description><link>https://www.c-plusplus.net/forum/post/598605</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598605</guid><dc:creator><![CDATA[sToRkka]]></dc:creator><pubDate>Fri, 03 Sep 2004 10:12:18 GMT</pubDate></item></channel></rss>