FTP数据上传及WinCE系统FTP根目录设定

news/2024/7/4 13:23:26

   嵌入式系统难免要和上位机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/





http://www.niftyadmin.cn/n/3655777.html

相关文章

JavaScript 垃圾回收机制

JavaScript拥有自动的垃圾回收机制,当一个值,在内存中失去引用时,垃圾回收机制会根据特殊的算法找到它,并将其回收,释放内存。 一 、垃圾回收概念 在有些数据不被需要的时候,这些数据就是垃圾数据&#x…

.Net 平台SerialPort类内部实现探秘

这段时间用Moxa DA660(WinCE5.0平台)测试16口同时下发数据,发现由于该硬件设备的CPU主频仅有260M赫兹,大于10口同时下发数据就会造成发送延迟,导致下发失败。前次用.net的SerialPort类实现了一个PPC红外口读写数据的小…

javaScript 内存泄露

什么是内存泄露 只要程序提出要求 ,运行时就需要提供内存 如果是持续性的服务进程,如果不及时释放不需要的内存,就会影响系统新能,甚至直接会崩溃。 不及时释放的内存 就叫内存泄露 什么情况下会引起? 1、意外的…

CSDN技术大会场记

1、和太阳一起出发2、远观大运村外景3、北京丽亭华苑酒店(CSDN技术大会场地)4、热闹的CSDN技术大会会场真正的CSDN英雄们 -- 名人堂,MVP,MVB这里面最早见过面的是孟宪会,是在我初次当选MVP在微软第一次聚会时认识的&am…

CSDN技术大会

其实在上周就收到了csdn相关人员的参会确认电话,今天早上查收邮件没有收到相关信息,没想到来了一个电话,提醒别忘了周五参会,她说补发邮件已不大可能,可以带名片过去,那边有名单可确认。也好,只…

JavaScript 作用域链

作用域链是什么 函数在使用一个变量的时候,会查找这个变量,如果自己内部没有,就会向上找,这个查找的过程就叫 作用域链 普通函数的作用域链 1、创建一个函数fn()时,会创建一个包含全局变量的作用域链,保存…

2007微软MVP获得连任

今天早上收到了这封邮件:“[MVP] 热烈祝贺!您已经获得 Microsoft MVP 奖励”,心情还是满不错的,在blog上留个纪念。----------------------------------------------------------------------------------------------尊敬的 Hong…

JavaScript 事件冒泡和事件捕获

什么是事件 JavaScript和HTML之间的交互是通过事件实现的。 事件:就是文档或浏览器窗口发生的一些特定的交互瞬间。 监听器(或事件处理程序):预定事件,以便事件发生时执行相应的代码。 通俗的说,这种模型其…