Ruby 鞋子挂在网上::FTP放置
因此,我编写了以下代码:Ruby 鞋子挂在网上::FTP放置,ruby,file-upload,shoes,net-ftp,Ruby,File Upload,Shoes,Net Ftp,因此,我编写了以下代码: Shoes.app(:title=> "Humax Uploader", :width=>400, :height=>400) { background rgb(240, 250, 208) stack(margin:10) { title "Humax Uploader" server = '[ip]' user = '[user]' pass = '[pass]'
Shoes.app(:title=> "Humax Uploader", :width=>400, :height=>400) {
background rgb(240, 250, 208)
stack(margin:10) {
title "Humax Uploader"
server = '[ip]'
user = '[user]'
pass = '[pass]'
require 'net/ftp'
@feedback = para "Find a file:"
flow do
@filename = edit_line :width => 150
para ' '
button 'Browse...' do
@filename.text = ask_open_file
end
end
file_list = ['My Music','My Photo','My Video']
list_box :items => file_list do |list|
Net::FTP.open(server, user, pass) { |ftp|
usize = 0
fsize = File.size(@filename.text)
ftp.putbinaryfile(@filename.text,"/mnt/hd2/" + list.text + "/" + File.basename(@filename.text),1024) { |block|
usize += block.size
@p.fraction = fsize/usize
}
@file_select.text = "File uploaded!"
ftp.close
}
end
@p = progress :width => 360
@file_select = para " "
}
}
基本上,它允许用户选择一个文件,它应该进入的文件夹,然后程序应该上传它
这是正确的:Stuff上传很好,但不幸的是:程序窗口在上传过程中挂起。为什么会发生这种情况(您是否遇到过相同的问题?),我如何解决它
谢谢你的帮助
请注意,我正在Windows上运行此脚本,但尚未“生成”到可执行文件。它是永久挂起还是仅在文件上载之前挂起?无论哪种情况,我认为这都是一个调度问题
您可能需要考虑运行上传(可能也是有用的),或者将它作为一个单独的进程运行,并使用某种套接字或文件进行进程间通信。
它挂起直到文件已上载:然后进程条填充,一切都很好。不幸的是,仅仅“添加”一个线程对我不起作用。现在将查看第二个链接!你的第二个链接成功了!你必须制作一个新的线程(在应用程序之外)并在其中处理这些内容。现在我需要找出如何让它更新进度条:P