zoukankan      html  css  js  c++  java
  • 创建目录(单个目录和多级子目录)方法

    1. CreateDirectory 创建文件夹(只能创建一级目录) CC++  

    函数原型:

    CreateDirectory(
    LPCTSTR lpPathName,
    LPSECURITY_ATTRIBUTES lpSecurityAttributes
    );

    简介:

         CreateDirectory 是Win32API函数,用于创建文件夹。
         参数 lpPathName 表示路径
        参数 lpSecurityAttributes 表示安全属性

    ============================================================================

     1 //例子(程序段):
     2 
     3         //设置属性
     4         SECURITY_ATTRIBUTES attribute;
     5         attribute.nLength = sizeof(attribute);
     6         attribute.lpSecurityDescriptor = NULL;
     7         attribute.bInheritHandle = FALSE;
     8         //创建
     9         if(CreateDirectoryA(“d:\yanlei”,&attribute) == 0)
    10             AfxMessageBox("false");

     2. SHCreateDirectoryEx 创建多级目录

    1.介绍
    SHCreateDirectoryEx是window flatform下建立文件夹的函数,他的功能比CreateDirectory(Ex)大。如果创建文件夹目录有的中间目录不存在,SHCreateDirectoryEx可以建立,而CreateDirectory(Ex)则做不到这一点。
    2.使用方法
    要想使用SHCreateDirectoryEx,必须先安装windows2000 floatform SDK,或者从已经安装的些开发包的系统中,把需要的文件考过来,这样比较麻烦,所以还要去微软的网站上下载一个开发包安装为好。些函数最低的系统要求为windows2000和window Me.

    假设的Flatform SDK安装在C:PROGRAM FILESMICROSOFT PLATFORM SDK目录下
    在VC6中编译程序时(其他的编译工具遇到情况,用类似的方法解决)
    如果出现这种错误:
    error C2065: \'SHCreateDirectoryEx\' : undeclared identifier
    则打开工具栏Project->Setting.s..
    出现配置窗口
    选择C/C++
    Category选择Preprocessor
    在Additional include directories
    添加C:PROGRAM FILESMICROSOFT PLATFORM SDKINCLUDE

    设置完成后
    在程序中添加引入库
    #pragma comment(lib, "C:\Program Files\Microsoft Platform SDK\Lib\shell32.lib")
    这样应该可以成功完成编译了。
    3.函数使用
    int SHCreateDirectoryEx(         
        HWND hwnd,
        LPCTSTR pszPath,
        SECURITY_ATTRIBUTES *psa
    );
    hwnd是窗口句柄,可以为NULL.
    psa是安全属性设置项,可以为NULL.
    pszPath要注意,这个路径必须是绝对路径. 比如c: est, d:hello, 不能写成test,也不能写成. est这样的相对路径。

  • 相关阅读:
    使用numpy生成二维正态分布
    %matplotlib inline的含义
    The following packages will be SUPERCEDED by a higher-priority channel是什么意思?
    conda命令详解
    软件包,API,SDK的区别
    IP组网实验(使用Cisco Packet Tracer路由器模拟软件)
    MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理
    K'ed by TNT team是什么意思?
    使用Applescript、Automator和AfredWorkflow实现流式工作
    Redux源码分析之createStore
  • 原文地址:https://www.cnblogs.com/MATU/p/3798813.html
Copyright © 2011-2022 走看看