首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Windows Mobile >

Windows Mobile 目录创建bug解决方法

2013-01-26 
Windows Mobile 目录创建bug一段Windows Mobile 6.5上的程序在程序启动初始化时需要创建三个目录 Data文件

Windows Mobile 目录创建bug
一段Windows Mobile 6.5上的程序
在程序启动初始化时需要创建三个目录 
Data文件夹是已经存在的 ,需要在Data文件夹里创建出Image\Photo,Image\Idcard和Image\Finger

代码如下
public string currentPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
String PhotoImagePath = Path.Combine(currentPath, @"Data\Image\Photo");
if (!Directory.Exists(PhotoImagePath))
DirectoryHelper.CreateDirectory(PhotoImagePath);
String IdcardImagePath = Path.Combine(currentPath, @"Data\Image\Idcard");
if (!Directory.Exists(IdcardImagePath))
DirectoryHelper.CreateDirectory(IdcardImagePath);
String  FingerImagePath = Path.Combine(currentPath, @"Data\Image\Finger");
if (!Directory.Exists(FingerImagePath))
DirectoryHelper.CreateDirectory(FingerImagePath);

public class DirectoryHelper
{

//自定义创建目录方法
public static void CreateDirectory(string targetDir)
{
DirectoryInfo dir = new DirectoryInfo(targetDir);
if (!dir.Exists)
dir.Create();
}
}

出现的问题是程序在第一次启动时只创建了Image文件夹,下面的三个子目录没有创建成功,
退出程序 ,再次开启程序,下面的三个子目录就能创建出来

于是把代码修改,将三个if判断换成了while(!Directory.Exists(XXX)),还是没有在第一次启动成功创建出三个子目录,只创建了Image.
目录没有创建成功,三个While语句却能正常退出,

求解???
[解决办法]
还差一点,就是Directory.Exists(FingerImagePath)返回值是什么?
[解决办法]
那要看.net cf运行库支持不支持了,c++的SHCreate系列是支持子目录的

热点排行