嵌入式系统难免要和上位机PC进行数据交换,小数据用TCP/IP实现就可以了,大文件,动则几百兆的数据,用Tcp/Ip自己实现有点划不来,所以我一般采用了Ftp上传的功能,在嵌入式组态软件的下载功能中就实现了组态的Ftp上传,目前正在升级改造的北京隧道广告系统的通信系统也是采用Ftp上传功能进行节目(大约7百兆的数据)下载的。
.net系统实现FTP客户端的功能是非常容易的,下面是简单的实现代码:
//FTP
private WebClient client = new WebClient();
if (File.Exists(@strIOFile) == true)
{
try
{
lstInfo.Items.Insert(0, DateTime.Now.ToString() + " : 开始下载IO配置文件 ...");
Application.DoEvents();
client.UploadFile(URL + @"/parini.ini", @strIOFile);
lstInfo.Items.Insert(0, DateTime.Now.ToString() + " : IO配置文件下载完毕");
}
catch (WebException exp)
{
lstInfo.Items.Insert(0, DateTime.Now.ToString() + " : 错误:" + exp.Message);
btnDown.Enabled = true;
btnOK.Enabled = true;
return;
}
}
在做FTP上传功能,有一项是必须要知道的,那就是FTP Server的根目录,由于触摸屏是我们自己开发的,直接跟硬件部门提出FTP Server的根目录是什么就行,有他们定制即可。但是在隧道系统系统,下位机是Moxa的设备,并且FTP Server的根目录有可能是外插的CF卡,还好Moxa的设备FTP Server的根目录就是WinCE的根目录,这样外接设备的盘符(或目录)就能动态的出现在FTP Server的根目录之下了,不需要进一步进行调整了。
这里也学到了一点FTP Server的根目录的相关知识,当然这点知识对FTP行家不算什么,但是对我这类用户是非常有用的。
FTP Server的根目录的设定在注册表HKEY_LOCAL_MACHINE/Comm/FTPD选项下面,“BaseDir”和 “DefaultDir”,“BaseDir”我不知道起什么作用,上网也没有查出一个所以然来,“DefaultDir”这项就是根目录设置项,如果设为“/”表示为设备根目录,否则可以直接设相应目录,如“/HardDisk”,下面我是用我们的触摸屏做实验的,截图如下:
根目录为"/HardDisk"
根目录为"/"
[叶帆]http://blog.csdn.net/yefanqiu/
分享到:
相关推荐
4. **设定用户目录**:每个FTP用户的根目录应根据其访问权限进行设定。这可以通过IIS管理工具完成,将用户账户与特定的磁盘路径关联。这样,用户只能访问为其分配的文件夹,确保数据的安全性。 5. **权限管理**:...
在Windows CE(WinCE)操作系统环境下,开发一个FTP客户端软件是为了实现嵌入式设备与FTP服务器之间的数据交换。FTP(File Transfer Protocol)是一种标准网络协议,用于在互联网上可靠地传输文件。在WinCE系统中,...
从提供的压缩包文件名称来看,我们可以推测客户端的界面可能包括两种级别的目录视图,即“根目录.bmp”和“二级目录.bmp”,可能用于展示FTP服务器的文件层级结构。而"ARMV_FTPClient.exe"和"ARMV4_FTPClient.exe...
- 介绍了如何制作Yaffs格式的根文件系统映像。 **3.4 编译u-boot** - **3.4.1 解压u-boot:** - 介绍了如何解压u-boot源码包。 - **3.4.2 配置u-boot:** - 介绍了如何配置u-boot。 - **3.4.3 编译u-boot:**...
- 配置匿名FTP服务器,允许远程用户访问特定目录下的文件。 #### 四、VIVI使用指南 **4.1 VIVI分区管理** - 介绍了如何利用VIVI工具对开发板的存储分区进行管理和操作。 **4.2 文件下载功能** - 利用VIVI下载并...
当从WinCE系统转换到Linux系统时,需要特别注意对NandFlash进行擦除操作,确保旧系统残留的数据不会影响新系统的正常运行。 **2-1-1 Eboot擦除NandFlash方法** 1. **准备工作**:首先确保电脑上安装了相应的工具...
- **复制镜像文件**:将预置的Linux系统镜像文件复制到SD卡的根目录下,确保文件完整无误。 - **设置启动顺序**:通过BIOS/UEFI设置SD卡为第一启动项,以便开发板能识别并从SD卡启动。 **2-3 烧写Linux到开发板的...
**3.6 烧写根文件系统** 1. **选择文件系统类型**:根据需求选择cramfs或yaffs文件系统。 2. **准备文件系统镜像**:创建或获取对应的文件系统镜像文件。 3. **烧写过程**:将文件系统镜像烧写到NandFlash中。 **...
1.3.4 电源系统及接口.......................................................................................................................- 27 - 1.3.5 复位系统.........................................