广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 28790 个阅读者
 
<< 上页  1   2   3   4   5   6  下页 >>(共 7 页)
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
n3ph223172
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x22 鲜花 x87
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

 
下面是引用 ebolaman 于 2011-08-10 14:00 发表的 : 到引言文
直接给你 VB 2010 专案吧

再次感谢,开来看之后,发现原来我是少加入东西表情
        'Navigate URL
        wb_back.Navigate("file://" & tempPath)
        local_new_objcheck(1)
上面所指的file://是不是下载更新档案的路径?
另外再次请教,关于档案判断方面
此专案内装也写入吗?
当FTP空间有此档案,则检查用户自身电脑是否拥有该档案以及大小是否正确
如果有该档案,则检查大小。
如果没有该档案,则下载。
如果皆符合,直接略过。


献花 x0 回到顶端 [10 楼] From:台湾中华电信股份有限公司 | Posted:2011-08-10 16:52 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

这个 file:// 是连结到 WebBrowser 所使用的连结

你会发现 有一个资料夹 HTML,没错,WebBrowser 的网址是连到那个资料夹里的 133.html

并非 档案下载


复制程式
 'Write files
        Dim tempPath As String = dataDir & "133.html"
        My.Computer.FileSystem.WriteAllText(tempPath, My.Resources._133, False)

        'Navigate URL
        wb_back.Navigate("file://" & tempPath)
        local_new_objcheck(1)
[/pre]


关于 档案判断、FTP 下载 的部分,我完全没做

你看到的进度列都是模拟出来的,所以还要再加上去 连上网路下载档案的功能,现在只是 介面 的部分完成而已


关于 FTP 下载的部分,这里有几篇可以参考:

http://tw.myblog.yahoo.com/jw!t7pzMw...rticle?mid=2596

http://social.msdn.microsoft.com/Forums/en-US/vblangu...-40cf-91eb-08e71e98fa83/

http://www.codeproject.com/KB/IP/FtpClient.aspx?fid=225949...Position&view=Quick&fr=201


很抱歉我也是初学而已,对于 VB2010 种种的类型、宣告,还不是很熟悉

不过既然网路上范例与教学那么多,只要研究一下应该是能做出来的


My BOINC stats :

献花 x0 回到顶端 [11 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2011-08-10 17:14 |
n3ph223172
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x22 鲜花 x87
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 ebolaman 于 2011-08-10 17:14 发表的 : 到引言文
这个 file:// 是连结到 WebBrowser 所使用的连结
你会发现 有一个资料夹 HTML,没错,WebBrowser 的网址是连到那个资料夹里的 133.html
并非 档案下载

[code]
.......

哦,原来阿。
        Dim arrPack(,) = {{"Server Info", 100, "伺服器讯息"}, {"Map", 3000, "地图档"}, {"Amxx", 888, "插件平台"}, {"Plugin", 1999, "插件"}}
那请问当中的
{{"Server Info", 100, "伺服器讯息"}, {"Map", 3000, "地图档"}, {"Amxx", 888, "插件平台"}, {"Plugin", 1999, "插件"}}
里面3引号分别指的是?


献花 x0 回到顶端 [12 楼] From:台湾中华电信股份有限公司 | Posted:2011-08-10 17:17 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 n3ph223172 于 2011-08-10 17:17 发表的 : 到引言文
 
哦,原来阿。
        Dim arrPack(,) = {{"Server Info", 100, "伺服器讯息"}, {"Map", 3000, "地图档"}, {"Amxx", 888, "插件平台"}, {"Plugin", 1999, "插件"}}
那请问当中的
{{"Server Info", 100, "伺服器讯息"}, {"Map", 3000, "地图档"}, {"Amxx", 888, "插件平台"}, {"Plugin", 1999, "插件"}}
里面3引号分别指的是?


Server Info, Map, Amxx, Plugin 是更新时所采用的 ID,就像身分证一样,让 更新程式知道即将要更新什么
如果有来自 FTP 直接指示要更新哪个位置、哪个档案 这样更好

100, 3000, 888, 1999 是要更新的大小,当然是我乱打的

伺服器讯息, 地图档, 插件平台, 插件 是更新时要显示的 状态文字



当然最好的作法是,不要用这个阵列的方法,而是将更新的目录储存在 FTP 上,这样万一更新资料有变动,就不用再编辑 这个游戏更新器,而是更新 FTP 上的更新目录


My BOINC stats :

献花 x0 回到顶端 [13 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2011-08-10 17:51 |
n3ph223172
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x22 鲜花 x87
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 ebolaman 于 2011-08-10 17:51 发表的 : 到引言文



Server Info, Map, Amxx, Plugin 是更新时所采用的 ID,就像身分证一样,让 更新程式知道即将要更新什么
如果有来自 FTP 直接指示要更新哪个位置、哪个档案 这样更好

100, 3000, 888, 1999 是要更新的大小,当然是我乱打的

伺服器讯息, 地图档, 插件平台, 插件 是更新时要显示的 状态文字



当然最好的作法是,不要用这个阵列的方法,而是将更新的目录储存在 FTP 上,这样万一更新资料有变动,就不用再编辑 这个游戏更新器,而是更新 FTP 上的更新目录

感谢详细解说。
基本上小弟就是想以这种方法更新。

小弟希望不是(xxxx/xxxx),而是XXXKB/s。
另外大大您的FTP文章小弟参考过了,小弟对于FTP这个是懂非懂。
有听朋友说FTP只能下载单档,是真的吗?
小弟找到资料:http://ycc.tsu.edu.tw/...File.htm
也是看的不怎么懂…
总觉得跟小弟要弄的方法不一样?


[ 此文章被n3ph223172在2011-08-10 22:24重新编辑 ]


献花 x0 回到顶端 [14 楼] From:台湾中华电信股份有限公司 | Posted:2011-08-10 21:51 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 n3ph223172 于 2011-08-10 21:51 发表的 : 到引言文
 
感谢详细解说。
基本上小弟就是想以这种方法更新。
[attachment=768812]
小弟希望不是(xxxx/xxxx),而是XXXKB/s。
另外大大您的FTP文章小弟参考过了,小弟对于FTP这个是懂非懂。
有听朋友说FTP只能下载单档,是真的吗?
小弟找到资料:http://ycc.tsu.edu.tw/...File.htm
也是看的不怎么懂…
总觉得跟小弟要弄的方法不一样?


FTP 反正也只是不同地方的档案,最难的就是 "如何取得档案",之后判断档案、判断要不要更新、档案大小、状态列文字 等都是很简单的


抱歉我对 FTP 也是 完全不懂~

不过你可以给我 FTP 的网址,我来做看看

也请提供 状态文字 要如何显示(我看 CSO 的启动器的状态文字是分为 下载、解压缩、安装 大概这三阶段,要做 XXXKB/s 应该是 OK),档案要如何更新,FTP 帐密(可以创一个暂时测试用的)等更详细的资讯。


还有我觉得更好的是以 Hash Code 来决定档案是否要更新,如果单纯判断 档案大小,尤其是档案特别小,更新的时候却又刚刚好档案大小没变,会造成没有更新的错误,而 Hash Code 就没这个问题


[ 此文章被ebolaman在2011-08-10 22:50重新编辑 ]


My BOINC stats :

献花 x1 回到顶端 [15 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2011-08-10 22:32 |
n3ph223172
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x22 鲜花 x87
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

对不起!您没有登入,请先登入论坛


[ 此文章被n3ph223172在2011-08-10 23:45重新编辑 ]


献花 x0 回到顶端 [16 楼] From:台湾中华电信股份有限公司 | Posted:2011-08-10 23:33 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
CSOLauncher Simulation 第二版
好了,下载档案、检查 Md5、解压缩、复制档案、呼叫游戏、检查重复程序 的功能都已经做好


GIF 动画展示:





其中 ICSharpCode.SharpZipLib.dll,  MySharpZip.dll  这两个 DLL 我没办法把他弄到 EXE 本身里面,所以只好与 Launcher 放在同一个资料夹

预设的 FTP 是连线到 ftp://192.1....104 ,可以用你所提供的网页中介绍的软体 PCMan's FTP Server 来模拟本机的 FTP 下载,程式码中可以修改

预设的 FTP 逾时是一分钟,网页逾时是半分钟,可以调整




至于 FTP 上的资料夹,必须先建立个 CS_Update 资料夹,然后在底下置放一个索引文件 Index.txt

接着在 CS_Update 资料夹下就可以放置 cstrike 资料夹 (允许子资料夹),之后就能放更新的文件

但更新的文件必须全部是 zip 压缩档,并与原来档名一样(例如 cstrike.exe -> cstrike.exe.zip)


例如,档案分配如下 (我设定本机的 FTP 指向 Desktop\TempFTP\  ):

复制程式
Index.txt    Desktop\TempFTP\CS_Update\Index.txt
mp.dll.zip    Desktop\TempFTP\CS_Update\cstrike\mp.dll.zip
temp.zip    Desktop\TempFTP\CS_Update\cstrike\temp.zip
test.zip    Desktop\TempFTP\CS_Update\cstrike\test.zip


index.txt 的内容:

复制程式
[Update]
"\cstrike\temp" 23677 MD5MD5MD5MD5MD5MD5MD5MD5MD5MD5MD
"\cstrike\mp.dll" 548 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
"\cstrike\test" 17760 715BD382F69BF50C6A4B3A05080AC3A4

[Remove]
"Test"

index.txt 的 [Update] 底下的,一开始是 档案路径,接着是 "压缩档" 的档案大小,再来是 "解压缩后档案" 的 Md5,三个项目以空白键分开,档案路径必须被双引号夹起来

"压缩档" 的档案大小 是为了 显示进度列,"解压缩后档案" 的 Md5 是为了检查是否要更新


推荐的 Hash Codes 产生器/读取器:

HashMyFiles  (其他还有 HashCalc, HashX, Hash Codes, Arpoon Checksum, ExactFile 等 Hash/Checksum 的免费软体)





而更新的过程:

(1) 下载 Index.txt 知道更新的目录 (索引清单)

(2) 开始检查已经存在档案的 Md5 并与索引清单对比,不相符的下载ZIP档案 (下载到 %Temp%\ 中)

(3) 全部下载完后解压缩 (在 %Temp%\ 中)

(4) 复制档案(会覆盖)到Launcher 本身资料夹底下的资料夹 (包含子资料夹)

(5) 删除档案 (只删除 index.txt [Remove] 标头底下提供的清单,这个设计到时候可能不需要,只是为了客户端 档案简洁之用 (例:把旧的档案删除))


采用 ZIP 压缩档好处是能节省 下载时间,如果你觉得一个档案一个档案 压缩成 ZIP 档案很烦

可以用免费软体  ArcThemAll 把选取的档案一次 每个都加入到 个别的 ZIP 档案

而新的资料我改存到 %Temp% 中,你可以在程式执行中在 %Temp% 下找到 CSOLnchr_Simu_XXX 的资料夹 (会在 Launcher 关闭时被删除)




还有,我刚刚执行似乎有发现一个 BUG,就是 Launcher 本身可以重复启动

其他功能请自行修改,我已经帮你完成几乎所有部分了




CSOLauncher Simulation  VB 2010 专案下载:

Sorry this attachment is not available for download right now.


[ 此文章被ebolaman在2011-08-11 22:43重新编辑 ]


My BOINC stats :

献花 x1 回到顶端 [17 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2011-08-11 21:43 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

关于 禁止Launcher 重复执行

请将 frm_main.vb 中的  Sub :  local_check_existExe 修改成

复制程式
    Private Sub local_check_existExe()

        'Check current process
        If (Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Length > 1) Then Me.Close() : Exit Sub

        'Check game process
        If Process.GetProcessesByName(cFile.get_filename_major(exe.gameExe)).Length <> 0 Then local_show_errDlg("Err_exist_gameExe", exe.gameExe)

    End Sub


就可以防止重复执行程式了 (但不能防止 同时间 启动) (P.S. 还有另外一种 Mutex 的方法)


My BOINC stats :

献花 x1 回到顶端 [18 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2011-08-11 22:20 |
n3ph223172
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x22 鲜花 x87
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 ebolaman 于 2011-08-11 22:20 发表的 : 到引言文
关于 禁止Launcher 重复执行
请将 frm_main.vb 中的  Sub :  local_check_existExe 修改成
[code]
    Private Sub local_check_existExe()
        'Check current process
.......

原来如此,小弟了解了。
想必这份源码一定能让小弟进步许多^^!


献花 x0 回到顶端 [19 楼] From:台湾中华电信股份有限公司 | Posted:2011-08-11 22:39 |

<< 上页  1   2   3   4   5   6  下页 >>(共 7 页)
首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.023942 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言