避免金山“.ksobak”引發(fā)悲劇的方法

如果我們的生活都有底線,就沒有那么多悲劇誕生;
如果我們做產(chǎn)品都有底線,也就沒那么多Bug了!
——塔哥語錄 :)

金山WPS

說說今天的主角——“.ksobak”,它是金山wps安裝、更新后在注冊(cè)表中一些小手段的字 段,尤其是當(dāng)你的環(huán)境中已經(jīng)安裝MSOffice套件時(shí),它的殺傷力是巨大的。

先嘮兩句閑嗑吧,也算是緬懷一下曾經(jīng)青蔥過的wps!
在塔哥做辦公軟件的那些年,wps是亦敵亦友,那時(shí)的辦公軟件在注冊(cè)表注入的方面比較謹(jǐn)慎,自己的可以加,別人的不敢碰。
在塔哥整版式文檔的時(shí)候,wps是友商,V8(wps2012)改版之后啟動(dòng)速度有了明顯的提升, 但也是從這會(huì)兒開始,wps的氣質(zhì)變了。

隨著受困于工具類軟件的發(fā)展,wps加入了很多新的元素,其中最主要的就是云盤、模版庫這 倆提現(xiàn)手段。它的初衷是為了提供一個(gè)付費(fèi)通道,就公司而言無可厚非。但它把注冊(cè)表改的亂七八糟,那就不合適了!

本文目錄:
1、".ksobak"是什么?
2、它都做了什么?
3、怎么避免它帶來的影響?

樓主寫本文時(shí)的辦公軟件環(huán)境是:

  • MSOffice2016
  • WPS 2016

會(huì)用一些COM技術(shù)的基礎(chǔ),目的是為大家解決安裝wps后對(duì)系統(tǒng)帶來的影響,尤其是 MSOffice與wps同時(shí)安裝時(shí)的一些異?,F(xiàn)象。


wps版本

一、".ksobak"是什么?

“.ksobak”是金山wps修改注冊(cè)表時(shí)的一個(gè)備份鍵值,將原本指向MSOffice的內(nèi)容改成了wps 套件的內(nèi)容。同時(shí),將原有內(nèi)容以“.ksobak”為名稱另存。

.ksobak

如圖所示,在安裝MSOffice2016后,Excel.Application.16將被注冊(cè),等wps安裝后被修改成 了Excel.Application.12 。

注意,此時(shí)的Application12并非是Msoffice 2007,而是WPS的產(chǎn)品!問題與災(zāi)難都是源自于此。
備注,MSOffice開發(fā)代號(hào)與版本對(duì)應(yīng)關(guān)系


MSOffice 版本

二、".ksobak"都做了些什么?

.ksobak只是一個(gè)標(biāo)示,表明wps修改了MSOffice曾經(jīng)指向的內(nèi)容。那么,wps到底改了多少呢?


204處 ksobak

塔哥以.ksobak為關(guān)鍵字,搜了一把。在我的環(huán)境中,一共有204個(gè)。范圍涵蓋了Word、Excel和 Powerpoint三大產(chǎn)品,涉及到應(yīng)用程序、模板、Addin插件、外掛公式等各類應(yīng)用??梢哉f, 影響的范圍還是很大的。

比如說在你用COM接口,以ProgID“Word.Application”想啟動(dòng)MSWord的時(shí)候,實(shí)現(xiàn)上啟動(dòng)的卻是WPS。原因就在于金山wps已經(jīng)把LocalServer32路徑給改了!


LocalServer32 Action
#!/usr/bin/python
# -*- coding: utf-8 -*-
import win32com.client
wpsApp = win32com.client.Dispatch("PowerPoint.Application")

也就是說,在通過COM控制MSOffice的時(shí)候,不管是你直接調(diào)用,還是間接操作。wps的修改都會(huì)讓你得到意想不到的結(jié)果。

三、如何避免它帶來的影響?

如何避免wps安裝、升級(jí)帶來的影響,也就意味著如何防止WPS篡改MSOffice的鍵值內(nèi)容!
實(shí)現(xiàn)方法有以下幾種:

  • 設(shè)置注冊(cè)表鍵值的操作權(quán)限;
  • 設(shè)置注冊(cè)表整體的讀寫權(quán)限;
  • 分機(jī)安裝,物理隔絕;
鍵值權(quán)限設(shè)置

以上三種都能實(shí)現(xiàn),選擇哪個(gè)還看你的應(yīng)用環(huán)境吧。畢竟現(xiàn)在混著用的人并不多,需要調(diào) COM接口的人更是少之又少。

行了,博客寫到這就已經(jīng)結(jié)束了。wps雖然給我添堵,有些技術(shù)手段也挺low的,但它不失為 一個(gè)不錯(cuò)的辦公軟件。曾經(jīng)跑項(xiàng)目的時(shí)候,跟WPS的一個(gè)前輩聊天,他說的一句話我現(xiàn)在還記得。

wps的困境就是有用戶沒市場(chǎng),有市場(chǎng)沒用戶!

在個(gè)人版中,它有廣泛的用戶群體,但都不是付費(fèi)用戶。在企業(yè)版本,占據(jù)了九成以上的市場(chǎng), 但沒人認(rèn)真用。你說,它的研發(fā)到底該為不花錢的個(gè)人用戶,還是花了錢的企業(yè)用戶呢?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容