怎样一次创建一个多级目录(50分哦)

gateh 2000-09-07 09:34:00
各位高手:
怎样才能一次创建一个多级目录呢?
举例:
比如我要创建一个目录c:\temp\temp\tmep\temp
其中已经有了c:\temp或者没有,有没有办法调用一个函数来进行一次性创建
创建或者类似的类控件.

如果有控件,希望实现下面这种效果:
各位高手肯定见过各式各样的安装程序,其中你在选择安装目录的时候,安
装软件允许你输入一个,如果没有,它将替你创建!

谢谢了!

小弟在此再次感谢了!thanks



...全文
400 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
noname3 2000-09-09
  • 打赏
  • 举报
回复
原来如些,我说我的硬盘上怎么有好多的这个文件呢.
gateh 2000-09-09
  • 打赏
  • 举报
回复
谢谢各位,小弟回去试一试,再看看能否给你分哦!
谢谢
蒋晟 2000-09-08
  • 打赏
  • 举报
回复
可以用SHFileOperation拷贝一个文件(微软喜欢用一个0字节的MSCREATE.DIR)到目标目录,文件系统会自动建立多级目录。
oldworm 2000-09-08
  • 打赏
  • 举报
回复
下面的方法简单:
char DirName[_MAX_PATH];
int i;
strcpy(DirName, (LPCTSTR)strDefaultPath);
int len=strlen(DirName);
for(i=0;i<len;i++)
{
if(DirName[i]=='\\')
{
DirName[i] = 0;
mkdir(DirName);
DirName[i] = '\\';
}
}
if(len>0)
{
mkdir(DirName);
}
U皮特U 2000-09-07
  • 打赏
  • 举报
回复
源码如下,调用方式 WriteDirectory( strPath); 参数为要创建的目录全路径名,最后没有"\"。
详细说明参见:http://go18.163.com/~freecode/vc/sharecode/source/WriteDir.html

#include "stdafx.h"

BOOL WriteDirectory(CString dd)
{
HANDLE fFile;
WIN32_FIND_DATA fileinfo;
CStringArray m_arr;
BOOL tt;
int x1 = 0;
CString tem = "";


fFile = FindFirstFile(dd,&fileinfo);

// if the file exists and it is a directory
if(fileinfo.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)
{
// Directory Exists close file and return
FindClose(fFile);
return TRUE;
}
m_arr.RemoveAll();
for(x1 = 0; x1 < dd.GetLength(); x1++ )
{
if(dd.GetAt(x1) != '\\')
tem += dd.GetAt(x1);
else
{
m_arr.Add(tem);
tem += "\\";
}
if(x1 == dd.GetLength()-1)
m_arr.Add(tem);
}


// Close the file
FindClose(fFile);


// Now lets cycle through the String Array and create each directory in turn
for(x1 = 1; x1 < m_arr.GetSize(); x1++)
{
tem = m_arr.GetAt(x1);
tt = CreateDirectory(tem,NULL);

// If the Directory exists it will return a false
if(tt)
SetFileAttributes(tem,FILE_ATTRIBUTE_NORMAL);
// If we were successful we set the attributes to normal
}
// Now lets see if the directory was successfully created
fFile = FindFirstFile(dd,&fileinfo);

m_arr.RemoveAll();
if(fileinfo.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)
{
// Directory Exists close file and return
FindClose(fFile);
return TRUE;
}
else
{
// For Some reason the Function Failed Return FALSE
FindClose(fFile);
return FALSE;
}
}


本课程主要以口袋西游为例,学习一个网络游戏是怎么通过游戏服务器与玩家客户端进行通信交互的,通过OD,CE等工具对游戏进行调试,找到各个数据基址(例如角色基址,背包基址等),找出游戏里面的功能CALL(例如寻路CALL,打坐CALL等)及参数析,并且编码实现功能。本课程可以带领你游戏逆向入门可以学会 CE,OD,找游戏基址,功能CALL等实现变态功能可以更深入的理解从高级语言到汇编语言的一个对应过程可以学会 逆向软件  外挂与反外挂 破解防破解  游戏安全的基础知识可以为以后的及逆向高级课程 打下良好的基础可以自己析游戏数据,用C语言实现游戏外挂功能等重点:  本套课程的重点就是带领大家析游戏数据,毫不客气的说,各位学完此套课程对析游戏数据这块会有一个质的飞跃。课程目录  01.课程简介及功能演示  02.CE找人物基址及人物属性偏移  03.OD找人物基址及人物属性偏移  04.创建MFC DLL项目  05.代码实现输出人物信息  06.发包函数概述  07.怎么看待重写的发包函数  08.普通发包与线程发包  09.找打坐CALL及参数析  10.代码实现打坐CALL  11.喊话CALL及参数析  12.代码实现喊话CALL  13.找寻路CALL及参数析  14.代码编写寻路CALL  15.穿装备CALL及参数析  16.代码实现穿装备CALL  17.NPC对话CALL  18.代码实现NPC对话CALL  19.唤出宠物  20.宠物合体  21.收回宠物  22.取下宠物

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧