<?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[Ermitteln]]></title><description><![CDATA[<p>Wie kann ich folgende Verzeichnise ermitteln:<br />
System Verzeichnis<br />
Windows Verzeichnis<br />
Temporäre Verzeichnis<br />
Windows Programm Verzeichnis</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/173004/ermitteln</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Jul 2026 06:34:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/173004.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 Feb 2007 17:12:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ermitteln on Sat, 10 Feb 2007 17:12:07 GMT]]></title><description><![CDATA[<p>Wie kann ich folgende Verzeichnise ermitteln:<br />
System Verzeichnis<br />
Windows Verzeichnis<br />
Temporäre Verzeichnis<br />
Windows Programm Verzeichnis</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1226339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1226339</guid><dc:creator><![CDATA[AFC]]></dc:creator><pubDate>Sat, 10 Feb 2007 17:12:07 GMT</pubDate></item><item><title><![CDATA[Reply to Ermitteln on Sat, 10 Feb 2007 17:29:53 GMT]]></title><description><![CDATA[<p>GetWindowsDirectory();<br />
GetSystemDirectory();</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1226354</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1226354</guid><dc:creator><![CDATA[keksekekse]]></dc:creator><pubDate>Sat, 10 Feb 2007 17:29:53 GMT</pubDate></item><item><title><![CDATA[Reply to Ermitteln on Sat, 10 Feb 2007 17:35:41 GMT]]></title><description><![CDATA[<p>Siehe: SHGetFolderPath<br />
mit den passenden CSIDL_x Konstanten...</p>
<p>System Verzeichnis =&gt; CSIDL_SYSTEM<br />
Windows Verzeichnis =&gt; CSIDL_WINDOWS<br />
Temporäre Verzeichnis =&gt; GetTempPath<br />
Windows Programm Verzeichnis =&gt; entweder &quot;CSIDL_PROGRAM_FILES_COMMON&quot; oder &quot;CSIDL_PROGRAM_FILES&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1226361</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1226361</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 10 Feb 2007 17:35:41 GMT</pubDate></item><item><title><![CDATA[Reply to Ermitteln on Sat, 10 Feb 2007 17:39:05 GMT]]></title><description><![CDATA[<p>GetWindowsDirectory <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <a href="http://msdn2.microsoft.com/en-us/library/ms724454.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms724454.aspx</a><br />
GetSystemDirectory <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <a href="http://msdn2.microsoft.com/en-us/library/ms724373.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms724373.aspx</a><br />
GetTempPath <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <a href="http://msdn2.microsoft.com/en-us/library/aa364992.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/aa364992.aspx</a><br />
oder:<br />
SHGetFolderPath <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <a href="http://msdn2.microsoft.com/en-us/library/ms647764.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms647764.aspx</a> ,<br />
siehe dazu auch: <a href="http://msdn2.microsoft.com/en-us/library/ms649274.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms649274.aspx</a> für die ID's der verschiedenen Verzeichnisse.</p>
<p>Das bekommt man aber schnell heraus, wenn man mal in die MSDN guckt.</p>
<p>Siehe: <a href="http://msdn2.microsoft.com/en-us/library/ms724953.aspx" rel="nofollow">System Information Functions</a><br />
und: <a href="http://msdn2.microsoft.com/en-us/library/aa364232.aspx" rel="nofollow">File Management Functions</a></p>
<p>EDIT: Zuuuu spät <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/1226364</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1226364</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Sat, 10 Feb 2007 17:39:05 GMT</pubDate></item><item><title><![CDATA[Reply to Ermitteln on Sat, 10 Feb 2007 17:43:56 GMT]]></title><description><![CDATA[<p>durch diese Funktionen (windows.h wird benötigt!):</p>
<pre><code class="language-cpp">UINT GetSystemDirectory(  // Systemordner ermitteln (meistens C:\WINDOWS\system)
  LPTSTR lpBuffer,        // ein char* in den der Ordnername geschrieben wird
  UINT uSize              // maximale Länge des char*
);
</code></pre>
<pre><code class="language-cpp">UINT GetWindowsDirectory( // Windows-Ordner ermitteln(meistens C:\WINDOWS)
  LPTSTR lpBuffer,        // Parameter wie oben
  UINT uSize
);
</code></pre>
<pre><code class="language-cpp">DWORD GetTempPath(        // Ordner für Temporäre Dateienermitteln (ACHTUNG: Name endet mit einem Backslsh (\))
  DWORD nBufferLength,    // maximale Länge
  LPTSTR lpBuffer         // der char* in den geschrieben wird
);
</code></pre>
<p>wenn du mit Windows Programm Verzeichnis das aktuelle Verzeichnis meinst:</p>
<pre><code class="language-cpp">DWORD GetCurrentDirectory(  // Aktuelles Verzeichnis ermitteln (endet nicht mit Backslash)
  DWORD nBufferLength,      // Parameter wie bei GetTempPath
  LPTSTR lpBuffer
);
</code></pre>
<p>oder aber du meinst den Ordner, in dem Windows-Programme installiert werden (meistens C:\Programme):</p>
<pre><code class="language-cpp">// hierfür muss man shlobj.h einbinden
HRESULT SHGetFolderPath(
    HWND hwndOwner,         // Das Besitzerfenster - kann NULL sein
    int nFolder,            // Ordner-Identifier
    HANDLE hToken,          // sollte NULL sein
    DWORD dwFlags,          // zusätzliche Flags (sollte SHGFP_TYPE_CURRENT sein)
    LPTSTR pszPath          // char* zur Ausgabe (ACHTUNG: sollte eine Länge von MAX_PATH haben)
);
</code></pre>
<p>und jetzt noch 1 Beispiel:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;shlobj.h&gt;

void ShowDirectories(void) {
    char buf[MAX_PATH];
    char output[65536];
    GetSystemDirectory(buf, MAX_PATH);
    wsprintf(output, &quot;Systemordner: %s\n&quot;, buf);
    GetWindowsDirectory(buf, MAX_PATH);
    wsprintf(output, &quot;%sWindows-Ordner: %s\n&quot;, output, buf);
    GetTempPath(MAX_PATH, buf);
    wsprintf(output, &quot;%sTemporärer Ordner: %s\n&quot;, output, buf);
    GetCurrentDirectory(MAX_PATH, buf);
    wsprintf(output, &quot;%sAktuelles Verzeichnis: %s\n&quot;, output, buf);
    SHGetFolderPath(NULL, CSIDL_PROGRAM_FILES, NULL, SHGFP_TYPE_CURRENT, buf);
    wsprintf(output, &quot;%sProgrammverzeichnis: %s\n&quot;, output, buf);
    // Mit SHGetFolderpath kann man auch die anderen Ordner ermitteln, dann braucht man andere CSIDL's
    // anderes Beispiel: System32
    SHGetFolderPath(NULL, CSIDL_SYSTEM, NULL, SHGFP_TYPE_CURRENT, buf);
    // Für mehr Informationen zu SHGetFolderPath rate ich, in der MSDN nachzulesen
    wsprintf(output, &quot;%sSystem32-Ordner: %s\n&quot;, output, buf);
    MessageBox(NULL, output, &quot;Verzeichnisse&quot;, MB_OK|MB_ICONINFORMATION);
}

int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
    ShowDirectories();
    return 0;
}
</code></pre>
<p>MfG DrakoXP</p>
<p>PS: mist! zu lange getippt <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/1226369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1226369</guid><dc:creator><![CDATA[DrakoXP]]></dc:creator><pubDate>Sat, 10 Feb 2007 17:43:56 GMT</pubDate></item></channel></rss>