以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何把互联网的文件管理器设置成与本地的一样?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=8727)

--  作者:shixia
--  发布时间:2010/12/1 18:17:00
--  如何把互联网的文件管理器设置成与本地的一样?


图片点击可在新窗口打开查看此主题相关图片如下:互联网中的文件管理器.jpg
图片点击可在新窗口打开查看
以上是互联网中的文件管理器,点“增加”,出现的是FTP中的文件,点“管理”打开的是“远程文件管理器”( http://help.foxtable.com/topics/1407.htm ).要上传资料要在“管理”中上传,再到“增加”中才能把资料加入对应单元格。

如果不把扩展列属性设“远程文件”,那么点文件管理器的增加,出现打开文件对话框,选择文件后自动复制到Attachments文件夹下,如果在表事件BeforeAttachFile中设置SubFolder属性可以指定存放文件的子目录( http://help.foxtable.com/topics/2209.htm )。
我现在要实现的功能是:点“增加”按钮,打开文件对话框,选择本地文件后,点确定后在指定服务器中按自定义规则自动创建指定存放文件的子目录,并自动把选择的所有文件上传到指定服务器存放的目录中,最后在单元格中显示所选择的文件。点“删除”按钮实现在服务器上删除对应的文件(当然有选择项更好)。

如此一来,互联网的文件管理器就与本地文件管理器差不多了。

如果能实现这个功能,那么文件管理器中“管理”按钮不要的好,我可不能让项目使用者在服务器上利用FTP乱搞一气。

 

 

 


--  作者:狐狸爸爸
--  发布时间:2010/12/1 20:06:00
--  
呵呵,“管理”是去不掉的,除非专门为你设计,不过这不现实。

--  作者:shixia
--  发布时间:2010/12/1 20:17:00
--  
那么“点“增加”按钮,打开文件对话框,选择本地文件后,点确定后在指定服务器中按自定义规则自动创建指定存放文件的子目录,并自动把选择的所有文件上传到指定服务器存放的目录中,最后在单元格中显示所选择的文件。点“删除”按钮实现在服务器上删除对应的文件(当然有选择项更好)。”这个能不能实现?如何实现?
--  作者:狐狸爸爸
--  发布时间:2010/12/1 20:25:00
--  

可以的,在BeforeAttachFile中上传文件,FTPClient提供了上传和删除文件的方法,请自行参考:

 

http://help.foxtable.com/topics/1410.htm


--  作者:shixia
--  发布时间:2010/12/1 22:18:00
--  

有点晕,BeforeAttachFile事件好象无法管理FTP中的数据,FTPClient中的方法在那里用,是在事件中,还是在自己设计的“增加”代码中?狐爸还是给点思路

[此贴子已经被作者于2010-12-1 22:18:40编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/12/1 22:36:00
--  

在BeforeAttachFile定义一个FTPClient:

 

Dim ftp1 As new ftpclient
ftp1.host="128.169.143.96"
ftp1.Account = "foxuser"
ftp1.password = "136137138"
ftp1.upload(e.SorceFolder & "\\" &  e.FileName, "/服务器的子目录/" & e.SourceFile, True)

e.Cancel = True ‘取消本次添加,因为前面上传到服务器了,下面手工添加上传文件的地址

Dim v As String = Tables("XXX").Current("文件")

If v = "" Then

   v = "/服务器的子目录/" & e.SourceFile

Else

   v= v & vbcrlf & "/服务器的子目录/" & e.SourceFile

End IF

Tables("XXX").Current("文件") = V


--  作者:shixia
--  发布时间:2010/12/2 9:38:00
--  

错误提示:


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

把SorceFolder 改为 SourceFolder 也错误。

在表事件BeforeAttachFile中也没有该属性。也没有e.SourceFile属性,请狐爸看看。


--  作者:狐狸爸爸
--  发布时间:2010/12/2 9:47:00
--  

我在BeforeAttachFile加入下面的代码,测试通过:

MessageBox.show(e.SourceFolder & "\\" & e.FileName)

 

 


--  作者:shixia
--  发布时间:2010/12/2 9:57:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:未命名.gif
图片点击可在新窗口打开查看
SourceFile 不行啊
[此贴子已经被作者于2010-12-2 9:58:40编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/12/2 10:02:00
--  

呵呵,本来就没有SourceFile,你怎么用啊。

下面这样才可以得到含路径的文件名:

 

e.SourceFolder & "\\" & e.FileName