2013年6月15日 星期六

擺脫M$之路

M$的授權合約日益昂貴, 而內容也日益機車, 而必須購買授權的兩個必要原因,首先是很多網站用VB+ACTIVEX,如弊校的校務行政系統就是用以下的程式碼

    Dim objExcel
    Sub OpenDoc(strLocation)
    Set objExcel = CreateObject("Excel.Application")
    objExcel.Visible = true
    objExcel.Workbooks.Open strLocation
    objExcel.ActiveSheet.PrintPreview
    set objExcel=Nothing
    End Sub

對於很多大型組織而言, 為了這個程式碼就是一年100萬, VB是IE的專利, 而指定OFFICE則是必須要有OFFICE的EXCEL跟WORD(另外一些表單),對於後者, KING OFFICE (http://www.ksosoft.com/product/office-free.html)提供了高度相容的OFFICE界面, 包括ACTIVE X, 而其差別, 只有在CreateObject("Excel.Application") 必須改成 CreateObject("et.Application"), 若是CreateObject("Word.Application")則改為CreateObject("wps.Application"). (參考 http://www.binarynow.com/office-suite/kingsoft-office-2009-supports-microsoft-office-word-excel-api-compatible-ole-com-activex-application-automation/)

但問題在網站程式不能直接修改, 以上面的程式為例, 在沒有WINDOWS OFFICE的電腦中安裝KING OFFICE, 用REGEDIT搜尋所有的et.Application, 把它們通通改成Excel.Application 就可以使用. 由於M$的授權僅包括WINDOWS昇級及OFFICE是必需的, 其他都是強迫搭配, 所有的電腦都有必須購買隨機版, 所以WINDOWS跟IE(自XP後昇級的需求又不多)不需要解決, 如果沒有WINDOWS的話, linux加wine加IE是可以一試的

沒有留言: