<tfoot id='11afs'></tfoot>
        <legend id='11afs'><style id='11afs'><dir id='11afs'><q id='11afs'></q></dir></style></legend>
        <i id='11afs'><tr id='11afs'><dt id='11afs'><q id='11afs'><span id='11afs'><b id='11afs'><form id='11afs'><ins id='11afs'></ins><ul id='11afs'></ul><sub id='11afs'></sub></form><legend id='11afs'></legend><bdo id='11afs'><pre id='11afs'><center id='11afs'></center></pre></bdo></b><th id='11afs'></th></span></q></dt></tr></i><div id='11afs'><tfoot id='11afs'></tfoot><dl id='11afs'><fieldset id='11afs'></fieldset></dl></div>
        • <bdo id='11afs'></bdo><ul id='11afs'></ul>
      1. <small id='11afs'></small><noframes id='11afs'>

        如何在 Win32 中递归创建文件夹?

        时间:2023-08-01

          • <bdo id='Pe3wL'></bdo><ul id='Pe3wL'></ul>
            • <i id='Pe3wL'><tr id='Pe3wL'><dt id='Pe3wL'><q id='Pe3wL'><span id='Pe3wL'><b id='Pe3wL'><form id='Pe3wL'><ins id='Pe3wL'></ins><ul id='Pe3wL'></ul><sub id='Pe3wL'></sub></form><legend id='Pe3wL'></legend><bdo id='Pe3wL'><pre id='Pe3wL'><center id='Pe3wL'></center></pre></bdo></b><th id='Pe3wL'></th></span></q></dt></tr></i><div id='Pe3wL'><tfoot id='Pe3wL'></tfoot><dl id='Pe3wL'><fieldset id='Pe3wL'></fieldset></dl></div>
                <legend id='Pe3wL'><style id='Pe3wL'><dir id='Pe3wL'><q id='Pe3wL'></q></dir></style></legend>
                <tfoot id='Pe3wL'></tfoot>
                  <tbody id='Pe3wL'></tbody>
              1. <small id='Pe3wL'></small><noframes id='Pe3wL'>

                • 本文介绍了如何在 Win32 中递归创建文件夹?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我正在尝试创建一个函数,该函数采用目录名称(C:fooar..fooar..az\someserverfooar),并根据需要创建目录,以便创建整个路径.

                  I'm trying to create a function that takes the name of a directory (C:fooar, or ..fooar..az, or \someserverfooar), and creates directories as necessary so that the whole path is created.

                  我自己正在尝试一个非常幼稚的实现,这似乎是一个字符串处理的噩梦.有 / vs ,有一种以 \ 开头的网络共享的特殊情况(你也不能尝试 mkdir() 路径的前两级是机器名和共享名),并且有 . 类型的废话可以存在于路径中.

                  I am attempting a pretty naive implementation of this myself and it seems to be a string processing nightmare. There is / vs , there is the special case of network shares which begin with \ (also you can't attempt to mkdir() the first two levels of the path which are machine name and share name), and there is . type nonsense that can exist in a path.

                  在 C++ 中是否有一种简单的方法可以做到这一点?

                  Does there exist a simple way to do this in C++?

                  推荐答案

                  如果您不需要支持 Windows 2000 之前的 Windows 版本,您可以使用 SHCreateDirectoryEx 函数.考虑一下:

                  If you don't need to support Windows versions prior to Windows 2000, you can use the SHCreateDirectoryEx function for this. Consider this:

                  int createDirectoryRecursively( LPCTSTR path )
                  {
                      return SHCreateDirectoryEx( NULL, path, NULL );
                  }
                  
                  // ...
                  if ( createDirectoryRecursively( T("C:\Foo\Bar\Baz") ) == ERROR_SUCCESS ) {
                     // Bingo!
                  } 
                  

                  如果使用这样的 shell32.dll API 成为问题,您总是可以使用其他东西(可能是手动循环)重新实现上面的 createDirectoryRecursively 函数.

                  In case using such shell32.dll API ever becomes an issue, you can always reimplement the createDirectoryRecursively function above with something else (possibly a hand-wired loop).

                  这篇关于如何在 Win32 中递归创建文件夹?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:为什么在 Win32 控制台应用程序启动时会出现三个 下一篇:错误:无法在赋值中将“const wchar_t [13]"转换为

                  相关文章

                  最新文章

                  <small id='EyOpN'></small><noframes id='EyOpN'>

                    • <bdo id='EyOpN'></bdo><ul id='EyOpN'></ul>
                    1. <legend id='EyOpN'><style id='EyOpN'><dir id='EyOpN'><q id='EyOpN'></q></dir></style></legend>
                      <i id='EyOpN'><tr id='EyOpN'><dt id='EyOpN'><q id='EyOpN'><span id='EyOpN'><b id='EyOpN'><form id='EyOpN'><ins id='EyOpN'></ins><ul id='EyOpN'></ul><sub id='EyOpN'></sub></form><legend id='EyOpN'></legend><bdo id='EyOpN'><pre id='EyOpN'><center id='EyOpN'></center></pre></bdo></b><th id='EyOpN'></th></span></q></dt></tr></i><div id='EyOpN'><tfoot id='EyOpN'></tfoot><dl id='EyOpN'><fieldset id='EyOpN'></fieldset></dl></div>

                      <tfoot id='EyOpN'></tfoot>