原创 遷移桌面程序到MS Store(8)——通過APPX下載Win32Component

在上一篇《遷移桌面程序到MS Store(7)——APPX + Service》中,我們提到將desktop application拆分成UI Client+Service兩部分。其中UI Client可以通過Desktop Bridge技

原创 遷移桌面程序到MS Store(7)——APPX + Service

本篇我們以一個Sample工程,來說明如何把一個常見結構的desktop application,轉製成APPX並在MS Store提供下載。 之前的篇章中,我們已經介紹了一些內容,包括如何通過Visual Studio創建Packagi

原创 遷移桌面程序到MS Store(6)——.NET Portability Analyzer

        上一篇我們簡單介紹了.NET Standard,本篇我們來實踐.NET Framework 4.5 Class Library到.NET Standard 2.0的轉換.        首先讓我們來做一些準備工作。     

原创 遷移桌面程序到MS Store(5)——.NET Standard

  接下來的幾篇,我想討論下遷移桌面程序到MS Store,可以採用的比較常見、通用性比較強的實施步驟和分層架構。  通常商業項目一般都是不斷的迭代,不太可能突然停止更新現有的桌面版本,然後花很長時間從頭來寫UWP版本,所以我建議將遷移的過

原创 遷移桌面程序到MS Store(4)——桌面程序調用Win10 API

上一篇我們討論瞭如何在轉制的桌面程序中,通過StartupTask來實現轉製版本的開機自啓動。實際操作中,我們通過編輯Packaging工程中的Package.appxmanifest文件,來添加自啓動的配置項。如果要在程序的UI中實現開啓

原创 遷移桌面程序到MS Store(3)——開機自啓動

  遷移桌面程序的時候,有可能你會遇到這麼個需求——開機自啓動。Windows傳統桌面程序的傳統陋習。不論什麼奇葩軟件都想要開機自啓動,默認就給你打開,一開機哐哐哐什麼雷,什麼企鵝都蹦出來,也不管你用不用。  但是上班呢,老闆是給錢的,只要

原创 遷移桌面程序到MS Store(2)——Desktop App Converter

  遷移傳統桌面程序到MS Store的另一種方式是使用Desktop App Converter工具。雖然本篇標題包含了Desktop App Converter(以下簡稱DAC),實際上我是來勸你別用DAC的……  首先我簡單介紹下DA

原创 微軟2017MVP大禮包拆箱攻略

容我本週偷個懶,曬個大禮包就糊弄過去了。13號晚上拿到的大禮包,激動的沒敢拆,一直等到娃睡着了,才偷偷打開了快遞,忍了兩天沒忍住,上來曬圖得瑟一下,請各位輕拍,謝謝! 1.大禮包的盒子(聯邦快遞的盒子就不曬了……)  2.掀開你的蓋頭來

原创 [UWP]漲姿勢UWP源碼——UI佈局

懶癌晚期兼正月裏都是過年,一直拖到今天才繼續更新。之前的幾篇介紹了數據的來源,屬於準備工作。本篇我們正式開始構建漲姿勢UWP程序的UI界面。 我們這個Hello World程序比較簡單,總共只有一個頁面,在PC和Tablet上呈左右分開,左

原创 [UWP]漲姿勢UWP源碼——IsolatedStorage

  前一篇漲姿勢UWP源碼分析從數據源着手,解釋了RSS feed的獲取和解析,本篇則會就數據源的保存和讀取進行舉例。   和之前的Windows Runtime一樣,UWP採用IsolatedStorage的方式來存儲APP的私有數據,這

原创 Swift泛型Protocol對比C#泛型Interface

  本篇純屬擡槓之作,之前我們提到了Swift的泛型Protocol使用associatedtype關鍵字,而不是使用<Type>語法的泛型參數。這其中有什麼好處呢?   我就這個問題搜索了一些回答,大體上提到兩點:   <Type>語法

原创 [UWP]漲姿勢UWP源碼——極簡的RSS閱讀器

  漲姿勢UWP,一個開源的RSS閱讀器,一個純粹的項目,一個有道德的APP,一個脫離了低級趣味的作者,一些有益於人民的代碼。騷年,還等什麼,來漲點姿勢吧!   該項目代碼可能會引起部分人羣的不適,敏感人羣請在父母陪同下閱讀。   看到第三

原创 [UWP]漲姿勢UWP源碼——RSS feed的獲取和解析

  本篇開始具體分析漲姿勢UWP這個APP的代碼,首先從數據的源頭着手,即RSS feed的獲取和解析,相關的類爲RssReader,所有和數據相關的操作均放在裏面。   漲姿勢網站提供的RSS feed地址爲http://www.zhan

原创 Swift泛型協議的N種用法

  They said "you should learn a new language every year," so I  learned Swift. Now  I  learn a new language every two we