プライベートデリゲートのボイドCheckVersionNumber_CallBack(文字列str) ; // バージョン検出するためのデリゲートとして定義
//バージョンが検出さ
プライベート 無効 m_CheckVersionNumber(文字列strVersionNumber) { 試み { CheckVersionNumber_CallBackコールバック = 新しい新 CheckVersionNumber_CallBack(Thread_CheckVersionNumber_CallBack); // デリゲートの割り当て方法 スレッドを= TH 新しい新しいスレッド(m_Thread_CheckVersionNumber); th.IsBackground = trueに、 th.Start(コールバック); //は、子スレッドのデリゲートに送信すること } キャッチ(例外EX) { MessageBox.Show(" !エラー検出m_CheckVersionNumberバージョン" + StrVersionNumber + " " + ex.Message.ToString()); } }
// 子线程执行 プライベート ボイド m_Thread_CheckVersionNumber(オブジェクトOBJ) { 文字列 strVersionNumber = 本の.text。 clsWebSubmit objPost = 新しいclsWebSubmit(); 文字列 strUrl = clsConfig.CheckVersionNumberUrl。 文字列 strParam = " version_numberは= " + strVersionNumber。 ストリング strResult = objPost.m_PostSubmit(strUrl、strParam)。 Newtonsoft.Json.Linq.JObject jsonStr =Newtonsoft.Json.Linq.JObject.Parse(strResult)。 文字列 STR = jsonStr [ " 結果" ] .ToString())(TRIM。// CheckVersionNumber_CallBackコールバック = OBJ として CheckVersionNumber_CallBack。// 强转为委托 コールバック(STR); }
// メインスレッド方法 プライベート ボイド Thread_CheckVersionNumber_CallBack(文字列STR) { IF(この .lstHttpEvent.InvokeRequired == trueに) { ReceiveMsgModelメッセージ = 新しい新しい ReceiveMsgModel(Thread_CheckVersionNumber_CallBack); //は、方法名呼び出し この .Invoke(MSG、新しい新しい オブジェクト [ ] STR {}); // バックフォームスレッドのスレッドを形成しない } 他 { IF(STR == " 偽の")//ない最新の状態に、最新の真 { MessageBox.Show(「新しいバージョンがリリースされた、タイムリーに更新をダウンロードしてください!」); この .lstHttpEvent.SelectTab(「tabVersion 」); } } }