廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 30081 個閱讀者
 
<< 上頁  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.116416 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言