2019年4月24日 星期三

*(著作權 電腦程式著作)電腦程式著作是否構成實質近似的比對,應先濾除原告程式碼中不具原創性的部分。

智慧財產法院104年度民著上更(一)字第1號民事判決(2019.4.11)

上訴人 微窗科技股份有限公司 被上訴人 已琳科技股份有限公司

主文
上訴駁回

肆、本件不爭執事項: 一、本件民事糾紛之準據法應適用中華民國法律。 二、上訴人研發GALAXY、COSMOS兩項電腦程式著作,為有原創性   之電腦程式著作。 三、被上訴人周O坤、高O增、李O賢、許O安、嚴O文、唐O   祖等6 人,原均任職於上訴人公司或其關係企業,知悉與曾   接觸所有GALAXY、COSMOS兩項電腦程式著作。 四、被上訴人已琳公司前於97年8 月1 日設立登記,被上訴人周   O坤等6 人,嗣於97年間陸續自上訴人公司或旗下之AVITEC   H 公司離職後,轉至被上訴人已琳公司任職。
伍、本件主要爭點: 一、被上訴人已琳公司DIRECTOR電腦程式是否侵害上訴人微窗公   司GALAXY及COSMOS電腦程式著作之著作權?(臺經院侵害鑑   定報告書所列之兩造程式實質相同的部分及上訴人主張韌體   10點相同的部分,是否構成侵害著作權?)...

、得心證之理由: ... 二、本件侵害電腦程式著作爭議,經原審將微窗公司之COSMOS、   GALAXY程式原始碼及已琳公司之DIRECTOR程式原始碼檢送財   團法人臺灣電子檢驗中心(下稱台檢中心),並囑託該機關   鑑定,鑑定結果認為已琳公司之DIRECTOR程式與微窗公司之   GALAXY及COSMOS之檔案名稱、定義及資料結構(data struc   ture)、主程式架構、function的命名方式、運行次序(se   quence)、輔助描述(longprompts)、巨集指令(marcoin   struction)及參數之程式碼皆不相同,且難以判斷雙方是   否具備原創性(台檢中心鑑定報告第61-62頁,見外放證物   )。第一審及前審依台檢中心之鑑定報告,判決上訴人敗訴   ,嗣經最高法院發回更審後(發回更審意旨僅指摘前審判決   未依涉外民事法律適用法規定確定其準據法),上訴人主張   台檢中心之鑑定報告有重大瑕疵,請求另送其他機關鑑定,   經本院認為有進行第二次鑑定之必要,且發現第一次鑑定之   微窗公司之COSMOS、GALAXY程式原始碼未包含原審附件二之   紙本程式碼(原審卷三第250-255 頁,上訴人稱之為「廣播   程式」),故由上訴人另提出光碟③,連同微窗公司之COSM   OS、GALAXY程式原始碼(光碟①)、已琳公司之DIRECTOR程   式原始碼(光碟②)、原審附件二紙本程式碼(編號④)、   被上訴人提出之被上證29至被上證32(編號⑤,用以證明微   窗公司光碟③之NET_WaitBroadcas t、Net_SendBrocast 函   數不具有原創性),囑託臺經院進行鑑定,鑑定結果認為微   窗公司之光碟③與已琳公司之光碟②電腦程式有17處實質相   同的部分,上訴人主張依臺經院鑑定報告書所列之兩造程式   實質相同之部分,及前審主張之韌體10點相同的部分(見前   審卷一第315-319 頁反面),可認定已琳公司DIRECTOR程式   侵害上訴人之電腦程式著作權,並列入本件爭點,故本院關   於兩造電腦程式之比對,即依臺經院鑑定報告所載17處實質   相同的部分,及前審主張之韌體10點相同的部分為準。   (依上訴人之員工即證人黃義堃證稱,光碟③是要補足光碟   ①缺漏的部分,光碟③內的程式都屬於COSMOS,見本院卷三   第246 頁)。 三、被上訴人雖辯稱,鑑定光碟內之Scan_NetModules 、   Ext_DeviceCtrl 兩程式非屬COSMOS 電腦程式「內」的一部   分,而係存於COSMOS以「外」獨立程式,該二程式不僅非於   COSMOS環境下撰寫、生成,更是於欠缺COSMOS情況下,另行   撰寫、編譯(即compile )產生執行檔,故該二屬獨立著作   ,非屬本案訴訟標的,微窗公司於第二次送鑑定時,私自置   換鑑定標的云云。惟查,上訴人在原審已提出光碟①及原審   卷三附件2 (原審卷三第250-255 頁)所附紙本程式碼(上   訴人稱之為「廣播程式」,即鑑定標的④),主張其所有之   COSMOS、GALAXY電腦程式內容為上開證據所示,故上訴人於   原審已表明其主張電腦程式著作權之權利範圍。臺經院鑑定   報告所載兩造程式原始碼實質相同部分,其中編號1 至14臺   經院鑑定報告第26-44 頁)存在於光碟之Ext_DeviceCtrl   資料夾中,而該Ext_DeviceCtrl資料夾本就見於上訴人原審   所提鑑定光碟中(路徑為光碟①中COSMOS\Ext_\),另臺   經院鑑定報告所載兩造程式原始碼實質相同之編號15至16(   臺經院鑑定報告第46頁「NET_SendBrocast()」、第49頁列   「NET_WaitBroadcast()」)係存在於光碟③之Scan_Net   Modules 資料夾中,亦見於原審卷三附件2 (原審卷三第25   0-25 5頁)所附紙本程式碼,故臺經院鑑定報告認為兩造程   式原始碼實質相同部分之編號1 至16,均為上訴人在原審所   主張之系爭電腦程式著作之權利範圍,並無被上訴人所稱上   訴人於發回更審之後自行調包、添加之情事。至於臺經院鑑   定報告所列實質相同部分編號17,確實非在光碟①及原審卷   三附件2 (原審卷三第250-255 頁)紙本程式碼中,惟該部   分之程式碼僅有1 行,為釐清兩造爭議,本院亦一併加以判   斷。 四、按電腦程式著作係指包括直接或間接使電腦硬體產生一定結   果為目的,所組成指令組合之著作,亦即由文字、數字、符   號或標記等陳述(statement)或指令(instruction )所   組成;不論以何種(高階或低階語言)撰寫或具備何種作用   ,固屬著作權法所稱之電腦程式著作,其他作業系統程式(   operating program )、微碼(microcode )、副程式(   subroutine)亦屬電腦程式著作。然自七十四年七月十日著   作權法修正,電腦程式著作列入著作權保護之對象以來,隨   電腦科技之日新月異,對於非文字之結構(structure )、   次序(sequence)及組織(organization)、功能表之指令   結構(menu command structure )、次級功能表或輔助描述   (long prompts)、巨集指令(marco instruction )、使   用者介面(user interface)、外觀及感覺(look and   feel),是否均在著作權保護之範圍,審理之法院自應或委   由鑑定機關將(主張享有著作權保護之人之受保護)電腦程   式予以解構,過濾或抽離出其中應受保護之表達部分,將具   有高度抽象性之思想或概念等公共財產及基於效率或電腦軟   硬體功能外部因素所限制部分,予以濾除;再就侵權人是否   曾經接觸著作權人所享有著作權保護之表達部分及二程式間   實質相似程度,加以判斷是否侵害著作權人之著作財產權(   最高法院98年台上字第868 號判決參見)。本件臺經院鑑定   報告雖載明有進行抽離、過濾、比較程序,始比對出兩造程   式碼有17處實質相同的部分,惟鑑定報告中並未詳載如何進   行抽離、過濾、比較之過程,另經本院通知鑑定機關人員范   徽瑜到庭,其證稱:「本案我們並未做理論原則中的抽離,   報告書第19頁反映的是我們有將視窗函式部分濾除,留下來   的是經過比較後,產生近似度極高者」。嗣臺經院又以107   年5 月23日(107 )經研青字第05020 號鑑定補充說明函,   表示「其濾除時係將所有視窗函式部分直接排除,未排除其   他部分」,足見鑑定機關僅排除視窗函式,就視窗函式以外   之程式碼,鑑定機關並未判斷是否包含不具原創性之部分。   又本件兩造雖將「上訴人研發GALAXY、COSMOS兩項電腦程式   著作,為有原創性之電腦程式著作」列為不爭執事項,惟係   就該二程式整體而言,係具有原創性之事實不爭執,然而臺   經院鑑定報告認為兩造程式碼有17處相同部分,被上訴人等   仍抗辯該17處相同部分不具原創性,且兩造程式碼之表達方   式亦不相同,查鑑定機關之鑑定意見係供法院參考,是否可   予採用,仍應由法院依職權判斷,故本院認為就臺經院鑑定   報告所列17處相同部分,微窗公司之程式碼是否具有原創性   ,及兩造之程式碼是否構成實質相似,仍有加以判斷之必要   。 五、被上訴人已琳公司DIRECTOR電腦程式是否與上訴人GALAXY及   COSMOS電腦程式著作之程式碼構成實質近似?  (一)按著作權之保護標的僅及於表達,而不及於思想、概念,此   即思想與表達二分法。然思想或概念若僅有一種或極其有限   之表達方式時,因其他著作人無他種方式或僅可以極有限方   式表達該思想,如著作權法限制該等有限表達方式之使用,   將使思想為原著作人所壟斷,而影響人類文化、藝術之發展   ,亦侵害憲法就人民言論、講學、著作及出版自由之基本人   權保障,是以倘表達特定思想之方法僅有一種或極其有限之   方式,或思想與表達不可分辨、不可分離時,縱他人表達方   式有所相同或近似,此為同一思想表達有限之必然結果,亦   不構成著作權之侵害,此即思想與表達合併原則。而電腦程   式中非屬著作權所保護之部分包含:(1)因電腦程式之執行最   重效率,如其最有效率之執行方法只有一種或極其有限,於   此情形下,應認為思想與表達合併,不受著作權法保護。(2)   受外部因素之限制,如將來執行該程式之電腦機器規格(   mechanical specifications )、與其他程式(作業系統或   其他介面程式)之相容性(compatibility requirements   of other programs )、電腦製造商之設計標準、使用該程   式產業之特殊需求、電腦業界普遍被接受之程式撰寫慣例等   ,應認其表達與思想合併,而排除在著作權保護之範圍。(3)   由公共領域(Public Domain )所採用之元件,因屬公共財   ,亦應予以濾除於保護範圍之外(本院103 年度民著上字第   18號判決參照)。  (四)臺經院鑑定報告指出,已琳公司DIRECTOR電腦程式與微窗公   司電腦程式著作之程式碼,共有17處實質相同部分:   (1)上訴人微窗公司光碟路徑/Ext_DeviceCtrl/Ctrl_NET.    cpp檔案與被上訴人已琳公司光碟路徑/1_Apantac_Ctrl    GU I/Apantac_CtrlGUI/e lite_A PI/api_NetSocket.cpp    檔案中的14個函式(臺經院鑑定報告第26-44頁)。   (2)上訴人微窗公司光碟路徑/Scan_NetModules/ModuleAPI    /M od uleCtrl .cpp檔案與被上訴人已琳公司光碟路徑    / Apant ac_CtrlGUI/elite_API/e _SetModu leAPI .cpp    檔案中的2 個函式(臺經院鑑定報告第46頁)。   (3)上訴人微窗公司光碟路徑/Scan_NetModules/ModuleAPI    /ModuleCtrl .cpp檔案與被上訴人已琳公司光碟路徑    /Ap antac_CtrlGUI/elite_A PI/e_ SetModuleAPI .cpp    檔案中的一行敘述(臺經院鑑定報告第45頁)。  (五)玆就臺經院鑑定報告認為17處相同部分,是否構成侵權,分   析如下:   (1)臺經院侵害鑑定報告書第26-44頁認為微窗公司光碟路    徑/Ext_DeviceCtrl/Ctrl_NET.cpp檔案與已琳公司光碟    路徑/1_Apantac_CtrlGUI/Apantac_CtrlG    UI/elite_API/api_ NetSocket.cpp檔案中的14個函式:    1.臺經院鑑定報告第26頁微窗公司Ctrl_NET.cpp內的NET_     OpenSocket()函式(參附圖1)與已琳公司api_NetSoc     ket.cpp內的NET_OpenSocket(int net_TYPE=0)函式     (參附圖2):     單行敘述表達部分:      (甲)「OOOOOOOOOOOOOOOOOOOOOOOOOO」該敘述為利用       Visual C++習知語法宣告NET_OpenSocket()函式       包含SOCKET型別的回傳值,為思想與表達合併,       應不受著作權保護;再者,函式名稱NET_OpenSock       et之命名,係使程式撰寫者能辨識該函式,函式之       命名並不直接或間接使電腦產生一定結果,非屬著       作權法所稱之電腦程式著作,並且函式名稱NET_Op       enSocket為在描述該函式功能OpenSocket前加入       NET_字樣,僅屬單句或簡短用詞的標語,欠缺著作       應具備之最低限度創意性,而不受著作權法保護。      (乙)按Visual C++之語法,NET_OpenSocket()函式中之       單行敘述「OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOO」,僅為Visual C++固有之語法「return函數       名稱(參數列);」,其中socket()為固有之網路       函式,AF_INET 、SOCK_STREAM 為socket()函式       內建參數名稱,第三參數0 表示不選擇特定的通訊       協定(參被告107 年9 月17日準備書(二十六)所       提被上證51第4 頁),故該單行敘述應不受著作權       法所保護。     微窗公司NET_OpenSocket()函式表達部分:      再按Visual C++之語法,一函式之撰寫格式為回傳值      型別函數名稱(參數列)      {       函式主體;       return回傳值;       }      C++ 語法亦允許在函式回傳時呼叫另一函式,習知之      語法為回傳值型別函數名稱1(參數列1)      {       函式主體;       return函數名稱2(參數列2);       }      是以微窗公司欲將winsock 的socket函式包在自定義      函式中(參原告107年10月24日準備書狀第5頁)的最簡      潔寫法即為OOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      其中AF_INET 、SOCK_STREAM 為socket()函式內建      OOOOOOOO,第三參數0 表示不選擇特定的通訊協定(      參被告107 年9 月17日準備書(二十六) 所提被上證      51第4 頁),有概念併表達原則之適用,因此,上訴      人NET_OpenSocket() 函式之表達方式相較於習知之      撰寫方式僅創作了函式名稱NET_OpenSocket,然而如      前所述,該函式名稱不受著作權法保護。     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     綜上所述,上訴人微窗公司Ctrl_NET.cpp內的NET_Ope      nSocket()函式(參附圖1)與被上訴人已琳公司api_      Net Socket.cpp內的NET_OpenSocket(intnet_TYPE=0      )函式(參附圖2)整體表達不構成實質近似。    2.臺經院鑑定報告第27頁微窗公司Ctrl_NET.cpp內的NET_     CloseSocket(SOCKET S )函式(參附圖3 )與已琳公     司api_NetSocket.cpp 內的NET_CloseSocket(SOCKET     S )函式(參附圖4 ):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++習知語法宣告NET_CloseSo       cket()函式包含OOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOO,為思想與表達合併,應不受著作權保       護;再者,如前所述,函式名稱NET_CloseSocket       之命名,非屬著作權法所稱之電腦程式著作,並且       函式名稱NET_CloseSocket 為在描述該函式功能       CloseSocket 前加入NET_字樣,僅屬單句或簡短用       詞的標語,欠缺著作應具備之最低限度創意性,而       不受著作權法保護。      (乙)OOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOO      (丙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOO      故該表達有概念併表達原則之適用,因此,上訴人      NET_ CloseSocket() 函式之表達方式相較於習知之      撰寫方式僅創作了函數名稱NET_CloseSocket,然如前      所述,函式名稱非屬著作權法所稱之電腦程式著作,      且僅屬單句或簡短用詞的標語,欠缺著作應具備之最低      限度創意性,而不受著作權法保護,綜上所述,      NET_CloseSocket()函式之表達應不受著作權法所保      護。    3.臺經院鑑定報告第28頁微窗公司Ctrl_NET.cpp內的NET_S     endData(SOCKET S,void *data,unsig ned int data_si     ze)函式(參附圖5)與已琳公司api_NetSocket.cpp內     的NET_ SendData(SOCKET S,void*data, unsigned int     data_ size)函式(參附圖6)整體表達係為相同。     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++習知語法宣告NET_SendDat       a()函式包含SOCKET型別的參數S 、void* 型別的       參數data、unsigned int型別的data_size 以及int       型態的回傳值,為思想與表達合併,應不受著作權       法保護;再者,如前所述,函式名稱NET_SendData       之命名,非屬著作權法所稱之電腦程式著作,並且       函式名稱NET_SendData為在描述該函式功能SendDat       a 前加入NET_字樣,僅屬單句或簡短用詞的標語,       欠缺著作應具備之最低限度創意性,而不受著作權       法保護。變數data及data_size 之命名,係使程式       撰寫者能辨識該變數,變數之命名並不直接或間接       使電腦產生一定結果,非屬著作權法所稱之電腦程       式著作,並且data及data_size 為表示該變數為資       料以及資料長度,欠缺著作應具備之最低限度創意       性,而不受著作權法保護。      (乙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOO      故該表達有概念併表達原則之適用,因此,上訴人NET      _SendData()函式之表達方式相較於習知之撰寫方式      僅創作了函式名稱NET_SendData及變數名稱data、dat      a_size,然而,如前所述,函式名稱非屬著作權法所      稱之電腦程式著作,且僅屬單句或簡短用詞的標語;      變數data及data_size之命名,亦非屬著作權法所稱之      電腦程式著作,且data及data_size為表示該變數為資      料以及資料長度,欠缺著作應具備之最低限度創意性      ,綜上所述,NET_CloseSocket()函式之表達應不受      著作權法所保護。    4.臺經院鑑定報告第29頁微窗公司Ctrl_NET.cpp內的NET_R     eceiveData(SOCKET S,void *buf,unsigned int buf_s     ize)函式(參附圖7)與已琳公司api_NetSocket.cpp內     的NET _R_Data(SOCKET S,void *buf,unsigned int b_s     ize)函式(參附圖8):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++語法宣告NET_ReceiveData       ()函式包含SOCKET型別的參數S、void*型別的參數       buf 、unsigned int型別的buf_size以及int 型態       的回傳值,有思想與表達合併原則之適用;再者,       如前所述,函式名稱NET_ReceiveData 為在描述該       函式功能ReceiveData 前加入NET_字樣,僅屬單句       或簡短用詞的標語,不受著作權法保護。變數buf       及buf_si ze 之命名,係使程式撰寫者能辨識該變       數,變數之命名並不直接或間接使電腦產生一定結       果,非屬著作權法所稱之電腦程式著作,並且buf       及buf_size為表示該變數為暫存資料以及暫存資料       長度,欠缺著作應具備之最低限度創意性,而不受       著作權法保護。      (乙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     微窗公司NET_ReceiveData()函式表達部分:      按前述Visual C++之語法,微窗公司欲將winsock的      recv()函式包在自定義函式中的最簡潔寫法即為      OOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOO      故該表達有概念併表達原則之適用,因此,被告NET_      ReceiveData()函式之表達方式相較於習知之撰寫      方式僅創作函式名稱NET_ReceiveData以及變數名稱      buf ,buf_size ;然而,如前所述,函式名稱NET_Re      ceiveData 之命名,非屬著作權法所稱之電腦程式著      作,並且函式名稱NET_ReceiveData 為在描述該函式      功能ReceiveData 前加入NET_字樣,僅屬單句或簡短      用詞的標語,變數buf 、buf_size為表示該變數為緩      衝資料以及緩衝資料長度,欠缺著作應具備之最低限      度創意性,綜上所述,NET_ReceiveData()函式之      表達應不受著作權法所保護。    5.臺經院鑑定報告第30頁微窗公司Ctrl_NET.cpp內的Serv     er_KillUser(SOCKET UserS )(參附圖9 )與已琳公     司api_Net Socket .cpp 內的函式Server_K illUser(     SOCKET UserS)(參附圖10):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++語法宣告Server_KillUse       r()函式包含SOCKET型別的參數UserS 以及BOOL       型態的回傳值,為思想與表達合併,應不受著作權       法保護;再者,如前所述,函式名稱Server_KillU       ser 之命名,非屬著作權法所稱之電腦程式著作,       並且函式名稱Server_KillUser 為在描述該函式功       能伺服器端(Server)刪除使用者KillUser,亦即       將該使用者的連線刪除,僅屬單句或簡短用詞的標       語,欠缺著作應具備之最低限度創意性,而不受著       作權法保護。變數UserS 之命名,非屬著作權法所       稱之電腦程式著作,並且UserS 為表示該變數與使       用者有關,欠缺著作應具備之最低限度創意性。      (乙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOO     微窗公司Server_KillUser()函式表達部分:      按前述Visual C++之語法,OOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOO      故該表達有思想與表達合併原則之適用,因此,上訴      人Server_KillUser()函式之表達方式相較於習知      之撰寫方式僅創作了函式名稱Server_KillUser及變      數名稱UserS;惟如前述,函式名稱Server_KillUser      之命名,及變數UserS之命名,均欠缺著作應具備之      最低限度創意性。綜上所述,微窗公司Ctrl_NET .cp      p 內的Server_KillUser(SOCKET UserS )函式之表      達應不受著作權法所保護。     ③OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    6.臺經院鑑定報告第31頁微窗公司Ctrl_NET.cpp內的Init     ()函式(參附圖11)與已琳公司api_NetSocket.cpp     內的函式Init()(參附圖12):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++習知語法宣告Init()函式       無傳入參數,且無回傳值,「::」運算子表示Init       ()函式為類別CCtrl_NET內之函式,有思想與表達       合併原則之適用,應不受著作權保護;再者,函式       名稱Init之命名,非屬著作權法所稱之電腦程式著       作,並且函式名稱Init僅為一般初始用函式的命名       方法(即取英文Initial 之前4 字母),並且CCtr       l_NET 與Init,僅屬單句或簡短用詞的標語,故「       void CCtrl_NET : :Init()」單行之表達應不受       著作權保護。      (乙)OOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOO      (丙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      (丁)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     微窗公司Init()函式表達部分:      如前所述,由Visual C++語法之規範,OOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO,就該函式執      行的功能而言,除變數名稱可變換外,該表達方式已      為最簡潔之表達方式,有思想與表達合併原則之適用      ,應不受著作權保護;再者,類別名稱、變數名稱之      命名非屬著作權法所稱之電腦程式著作,並且前述類      別名稱、變數名稱皆僅屬單句或簡短用詞的標語,欠      缺著作應具備之最低限度創意性,綜上所述,微窗公      司Ctrl_NET .cpp 內的Init()函式之表達應不受著      作權法所保護。    7.臺經院鑑定報告第32頁微窗公司Ctrl_NET.cpp內的Clos     eNET()(參附圖13)與已琳公司api_NetSocket.cpp     內的函式CloseME()(參附圖14):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++習知語法宣告CloseNET()       函式無傳入參數,且無回傳值,「::」運算子表       示CloseNET()函式為類別CCtrl_NET內之函式,有       思想與表達合併原則之適用,應不受著作權法保護       ;再者,如前所述,函式名稱CloseNET()之命名       ,非屬著作權法所稱之電腦程式著作,並且函式名       稱CloseNET()僅為在描述該函式功能為關閉(Clo       se)socket,僅屬單句或簡短用詞的標語,類別名       稱CCtrl_NET亦非屬著作權法所稱之電腦程式著作       且屬單句或簡短用詞的標語,欠缺著作應具備之最       低限度創意性,而不受著作權法保護,故OOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOO單行之表達應不受       著作權保護。      (乙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      (丙)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOO     微窗公司CloseNET()函式表達部分:      如前所述,由Visual C++語法之規範,「OOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOO,就該函式執行的功能而言,除變      數名稱可變換外,該表達方式已為最簡潔之表達方式      ,有思想與表達合併原則之適用,應不受著作權保護      ;再者,如前所述,類別名稱、變數名稱非屬著作權      法所稱之電腦程式著作,並且前述類別名稱、變數名      稱皆僅屬單句或簡短用詞的標語,欠缺著作應具備之      最低限度創意性,綜上所述,微窗公司Ctrl_NET      .cpp內的CloseNET()函式之表達應不受著作權法所      保護。    8.臺經院鑑定報告第33頁微窗公司Ctrl_NET.cpp內的NET_     Connect()函式(參附圖15)與已琳公司api_NetSocke     t.cpp內的SOCKET_Connect()函式(參附圖16):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOO:       該敘述為利用Visual C++語法宣告NET_Connect()       函式包含OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOO,有思想與表達合併原則之適用;再者,       如前所述,函式名稱、變數名稱非屬著作權法所稱       之電腦程式著作,並且函式名稱NET_Connect 為在       描述該函式功能Connect前加入NET_字樣,僅屬單       句或簡短用詞的標語,IP及port為表示該變數為網       路位置以及埠號,欠缺著作應具備之最低限度創意       性,而不受著作權法保護。      (乙)附圖15函式內容40至48行:       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOO,由被上訴人準備書(三十)狀所       提被上證70中出版於90年「TCP/IP Sockets in C       :Practica l Guide for Programme rs」書籍第14       頁之程式碼節錄第49行可知,該表示方法為撰寫       C\C++ 程式之慣常寫法,有思想與表達合併原則之       適用,應不受著作權保護。     微窗公司NET_Connect()函式表達部分:      如前所述,由Visual C++語法之規範,「struct soc      kaddr_in connectt;」表示利用sockaddr_in結構(st      ruct)宣告一個變數connectt,「connectt.sin_fami      ly=AF_INET;」、「connectt.sin_addr.s_addr=ine      t_addr(IP);」、「connectt.sin_port=(unsigned      short)htons(port);」表示將connectt的成員變數「      sin_family」、「sin_addr.s_addr」、「sin_port      」分別設為「AF_INET」、「inet_addr(IP)」、「(      unsigned short)htons(port )」,該設定之順序      為撰寫C\C++ socket程式之慣常寫法,微窗公司NET_      Connect()函式第45-48 行表示先呼叫習知之conn      ect()函式,傳入參數「S 」、「(LPSOCKADDR)&c      onnectt 」及「sizeof(connectt)」,而後判斷co      nnect()函式所回傳之值是否小於零,若是則回傳「      false 」值,若不是則回傳「true」值,就該函式執      行的功能而言,除變數名稱可變換外,該表達方式已      為最簡潔之表達方式,有思想與表達合併原則之適用      ,應不受著作權法保護;再者,如前所述,函式名稱      、變數名稱非屬著作權法所稱之電腦程式著作,並且      前述類別名稱、變數名稱皆僅屬單句或簡短用詞的標      語,欠缺著作應具備之最低限度創意性,綜上所述,      微窗公司NET_Connect()函式之表達應不受著作權法      所保護。    9.臺經院鑑定報告第34頁微窗公司Ctrl_NET.cpp內的Serv     er_Init()函式(參附圖17)與已琳公司api_NetSocke     t.cpp內的Server_Init()函式(參附圖18):     單行敘述表達部分:      (甲)「BOOL Server_Init(SOCKET S,int port)」:       該敘述為利用Visual C++語法宣告Server_Init函       式包含SOCKET型別的參數S、int型別的參數port以       及BOOL型態的回傳值,有思想與表達合併原則之適       用;再者,如前所述,函式名稱、變數名稱非屬著       作權法所稱之電腦程式著作,並且前述函式式名稱       Server_Init為在描述該函式功能Init前加入Serve       r_字樣,表示該函式之功能為伺服端初始化,僅屬       單句或簡短用詞的標語,port為表示該變數為埠號       ,欠缺著作應具備之最低限度創意性,而不受著作       權法保護。      (乙)附圖17函式內容第57-68行:       「struct sockaddr_in serv;」表示利用sockaddr       _in 結構(struct)宣告一個變數serv,「serv       .sin_family = AF_INET;」、「serv.sin_addr       .s_addr = 0;」、「serv .sin_port= htons (po       rt); 」表示將serv的成員變數「sin_family」、       「sin_addr.s_addr」、「sin_port」分別設為「       AF_INET 」、「0 」、「htons(port )」;「       return false;」、「return true;」表示回傳       「false 」及「true」值,皆為Visual C++習知之       語法,有思想與表達合併原則之適用,應不受著作       權法保護;「if(listen(S, SOMAXCONN)< 0)       」表示先呼叫習知之listen()函式,傳入參數「       S」、及「SOMAXCONN」,而後判斷listen()函式       所回傳之值是否小於零,由被上訴人準備書(三十       )狀所提被上證70中出版於90年「TCP/IPSocke       ts in C: Practical Guide for Progr ammers」       書籍第14頁之程式碼節錄第49行可知,該表示方法       為撰寫C\C++程式之慣常寫法,差異僅為呼叫函式       不同,有思想與表達合併原則之適用,應不受著作       權法保護。     微窗公司Server_Init()函式表達部分:      由Visual C++語法之規範,就該函式執行的功能而言      ,除變數名稱可變換外,該表達方式已為最簡潔之表      達方式,有思想與表達合併原則之適用,應不受著作      權法保護;再者,如前所述,函式名稱、變數名稱非      屬著作權法所稱之電腦程式著作,並且前述類別名稱      、變數名稱皆僅屬單句或簡短用詞的標語,欠缺著作      應具備之最低限度創意性,綜上所述,微窗公司Serv      er _Init()函式之表達應不受著作權法所保護。    10.臺經院鑑定報告第36頁微窗公司Ctrl_NET.cpp內的Serv     er_WaitUserConnect()函式(參附圖19)與已琳公司     api_NetSocket.cpp內的Server_WaitUserConnect函式     (參附圖20):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOO:       該敘述為利用Visual C++語法宣告Server_WaitUse       rConnect()函式包含SOCKET型別的參數S、char型       別的指標參數UserIP以及SOCKET型別的回傳值,有       思想與表達合併原則之適用;再者,如前所述,函       式名稱、變數名稱非屬著作權法所稱之電腦程式著       作,並且函式名稱Server_WaitUserConnect為在描       述該函式功能WaitUserConnect前加入Server_字樣       ,表示該函式為伺服端所執行,僅屬單句或簡短用       詞的標語,UserIP表示該變數為使用者網路位置,       欠缺著作應具備之最低限度創意性,而不受著作權       法保護。      (乙)附圖19函式內容第72-79行:       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOO,皆為Visual C++習知之語法,有       思想與表達合併原則之適用,應不受著作權法保護       。     微窗公司Server_WaitUserConnect()函式表達部分:      由Visual C++語法之規範,就該函式執行的功能而言      ,除變數名稱可變換外,該表達方式已為最簡潔之表      達方式,有思想與表達合併原則之適用,應不受著作      權法保護;再者,如前所述,類別名稱、變數名稱非      屬著作權法所稱之電腦程式著作,並且前述類別名稱      、變數名稱皆僅屬單句或簡短用詞的標語,欠缺著作      應具備之最低限度創意性,綜上所述,微窗公司      Server_WaitUserConnect()函式之表達應不受著作      權法所保護。    11.臺經院鑑定報告第37頁微窗公司Ctrl_NET.cpp內的Thre     ad_ReceiveDATA()函式(參附圖21)與已琳公司api_     NetSocket.cpp內的TD_R_NE TDATA()函式(參附圖22     ):     微窗公司Thread_ReceiveDATA()函式程式碼,雖函      式中各單行程式碼皆僅為Visual C++固有之語法,為      思想與表達合併,應不受著作權法保護,然而,Thre      ad_ReceiveDATA()函式整體為微窗公司為達成從      網路接收資料並將接收之資料存於環形緩衝區中功能      之表達,其撰寫方法並非有限,且其資料結構與相對      應演算法之表達足以表現程式碼撰寫者之獨特性,故      Thread_ReceiveDATA()函式整體之表達為微窗公      司COSMOS程式原始碼表達中具有著作權法保護之適      格的部分。然而,已琳公司TD_R_NETDATA()函式中      「aNET」變數之值為經「api_NetSocket *」轉型之      TD_R_NETDATA()函式傳入參數「pParam」(附圖      22第84行),而微窗公司Thr ead_Re ceiveDATA()      函式中「aNET」變數之值為「&a_CNET- > m_MyNET」      (附圖21第92行),兩者表達並不相同,再者,已琳      公司TD_R _NETDATA()函式中在「while(1)」之      前並未如微窗公司Thread_ReceiveDATA()函式中設      定「a_NET-> m_WriteIndex = 0」,故兩者函式整      體表達並不相同。     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    12.臺經院鑑定報告書第39頁微窗公司Ctrl_NET.cpp內的Co     nnectTo()函式(參附圖23)與已琳公司api_NetSock     et.cpp內的doConnect()函式(參附圖24):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOO       該敘述為利用Visual C++習知語法宣告ConnectTo(       )函式包含char型別的指標參數IP、int型別的參數       port、MODE以及BOOL型別的回傳值,「::」運算子       表示ConnectTo()函式為類別CCtrl_NET內之函式       ,有思想與表達合併原則之適用,應不受著作權法       保護;再者,如前所述,函式名稱、變數名稱非屬       著作權法所稱之電腦程式著作,並且函式名稱       ConnectTo為在描述該函式功能,僅屬單句或簡短       用詞的標語,IP、port、MODE為表示該變數為網路       位置、埠號以及模式,欠缺著作應具備之最低限度       創意性,而不受著作權法保護,故「BOOL       CCtrl_NET::ConnectTo(char *IP,int port,int       MODE)」單行之表達應不受著作權法保護。      (乙)附圖23函式第185-192行:       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOO,皆為Visual C++習       知之語法,有思想與表達合併原則之適用,應不受       著作權法保護。     微窗公司ConnectTo()函式表達部分:      由Visual C++語法之規範,就該函式執行的功能而言      ,除變數名稱可變換外,該表達方式已為最簡潔之表      達方式,有思想與表達合併原則之適用,應不受著作      權法保護;再者,如前所述,類別名稱、函式名稱、      變數名稱非屬著作權法所稱之電腦程式著作,並且前      述類別名稱、函式名稱、變數名稱皆僅屬單句或簡短      用詞的標語,欠缺著作應具備之最低限度創意性,綜      上所述,微窗公司ConnectTo()函式之表達應不受      著作權法所保護。    13.臺經院鑑定報告第41頁微窗公司Ctrl_NET.cpp內的Writ     edData()函式(參附圖25)與已琳公司api_NetSocket     .cpp內的Client_WritedD()函式(參附圖26):     單行敘述表達部分:      (甲)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO:       該敘述為利用Visual C++習知語法宣告OOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       有思想與表達合併原則之適用,應不受著作權法保       護;再者,如前所述,函式名稱、變數名稱非屬著       作權法所稱之電腦程式著作,並且函式名稱       WritedData為在描述該函式功能,僅屬單句或簡短       用詞的標語,變數名稱buffer、size表示該變數與       緩衝區、大小有關,僅屬單句或簡短用詞的標語,       欠缺著作應具備之最低限度創意性,而不受著作權       法保護,故OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      (乙) 附圖25函式第197-200行:       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO       OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 該些表       達皆為Visual C++習知之語法,有思想與表達合併       原則之適用,應不受著作權保護。     微窗公司WritedData()函式表達部分:      由Visual C++語法之規範,就該函式執行的功能而言      ,除變數名稱可變換外,該表達方式已為最簡潔之表      達方式,有思想與表達合併原則之適用,應不受著作      權法保護;再者,如前所述,類別名稱、變數名稱之      命名非屬著作權法所稱之電腦程式著作,並且前述類      別名稱、變數名稱皆僅屬單句或簡短用詞的標語,欠      缺著作應具備之最低限度創意性,綜上所述,微窗公      司ConnectTo()函式之表達應不受著作權法所保護      。    14.臺經院鑑定報告第42頁微窗公司Ctrl_NET.cpp內的Read     Data()函式(參附圖27)與已琳公司api_NetSocket.     cpp內的Client_ReadD()函式(參附圖28):     微窗公司ReadData()函式程式碼,雖函式中各單行      程式碼皆僅為Visual C++固有之語法,為思想與表達      合併,應不受著作權法保護,然而,ReadData()函      式整體為微窗公司為達成從環形緩衝區中讀取資料功      能之表達,其撰寫方法並非有限,且其資料結構與相      對應演算法之表達足以表現程式碼撰寫者之獨特性,      故ReadData()函式整體之表達為微窗公司COSMOS程      式原始碼表達中具有著作權法保護之適格的部分。     上訴人雖主張,依臺經院鑑定報告所載,已琳公司使      用到二個與微窗公司相同的參數;變數定義部分,兩      邊在型別及命名都一樣,差別僅在於已琳公司多了一      個變數;在架構上,兩邊剛好都使用do while來進行      迴圈,迴圈離開條件也相同,在迴圈內微窗公司使用      四個if判斷式,已琳公司雖只使用三個if,但這是因      為其將微窗公司四個if中的其中一個註解掉了,如果      沒有註解掉,雙方皆使用四個判斷內容都一樣的if,      是兩者整體表達相同。由此可見,已琳公司係抄襲微      窗公司之表達方式後,再進行些微修改,已琳公司確      係抄襲微窗公司之表達,自屬侵害微窗公司之著作權      云云。惟查,雖已琳公司使用到二個與微窗公司相同      的參數,但微窗公司ReadData()函式有三個參數,      已琳公司Client_ReadD()函式僅有兩個參數;再查      ,雖兩者「OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO」      、「OOOOOOOOOOOOOOOOOOOOOOOOO」型別及命名相同      ,在架構上,兩邊剛好都使用do while來進行迴圈,      迴圈離開條件也相同,在迴圈內微窗公司使用四個if      判斷式,已琳公司雖只使用三個if,但這是因為其將      微窗公司四個if中的其中一個註解掉了,如果沒有註      解掉,雙方皆使用四個判斷內容都一樣的if,是兩者      整體表達相同,惟微窗公司ReadData()函式使用「      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      」,已琳公司Client_ReadD()函式使用則使用「      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO      OOOOOOOOOOOOOOOOOOOO,再用該寫入指標「a_NET      .m_ReadIndex」執行資料讀出「memccpy(buffer      + ww_index,a_NET.m_Buf+a_NET.m_ReadIndex ,ss      );」,然而已琳公司Client_ReadD()函式在「if      (ri!=wi)」條件內,則先執行資料讀出「memcpy      ((char *)buffer+ww_index,pNET-> m_Buf+pNET      -> m_in,ss);」再判斷寫入指標「pNET-> m_in」是      否大於一最大值,兩者函式運作不相同,故兩者之表      達不同,難謂兩者構成實質近似,是以,上訴人主張      已琳公司抄襲微窗公司之表達,並不可採。   (2)臺經院鑑定報告第46-51 頁微窗公司光碟路徑/Scan_Ne    tMod ules/ModuleAPI/ModuleCtrl .cpp 檔案與已琳公司    光碟(2)路徑/Apantac_CtrlGUI/elite_API/e_SetModuleAP    I .cpp檔案中的2 個函式:    1.臺經院鑑定報告第46頁微窗公司ModuleCtrl.cpp內的NE     T_SendBrocast()函式(參附圖31)與已琳公司e_SetM     oduleAPI.cpp內的NNN_Send Brocast()函式(參附圖     32):     被上訴人抗辯微窗公司NET_SendBrocast()函式(參附     圖31)不具原創性,並提出被上證31程式碼DoUdpClien     t()函式(參附圖33)為證。經查,由圖31及33所揭示     程式碼,可知兩者差異在於:OOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOO,屬功能上之簡單調整,並不影響     DoUdpClient ()函式整體之表達,故     NET_SendBrocast ()函式之表達並不具原創性。    2.臺經院鑑定報告第49頁微窗公司ModuleCtrl.cpp內的     NET_WaitBroadcast()函式(參圖34)與已琳公司e_Se     tModuleAPI.cpp內的NNN_WaitBroadcast()函式(參     圖35):     被上訴人抗辯微窗公司NET_WaitBroadcast()函式(參     圖34)不具原創性,並提出被上證31程式碼DoUdpClien     t()函式(參附圖36)為證。經查,由圖34及36所揭示     程式碼,可知兩者差異在於:OOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO     OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 屬功能     上之簡單調整,並不影響DoUd pClient()函式整體之     表達,故NET_WaitBroadcast ()函式之表達並不具原     創性。   (3)臺經院鑑定報告第45頁微窗公司光碟(3)路徑/Scan_NetM    odules/ModuleAPI/ModuleCtrl .cpp檔案與已琳公司光碟    路徑/Apantac_CtrlGUI/elite_API/e_SetModuleAPI .    cpp 檔案中的一行敘述(參附圖29、附圖30):    微窗公司「CCtrl_NET g_NET〔20〕」僅為利用Visual C++    習知語法宣告CCtrl_NET類別的物件陣列OOOOOOOOOOO,該    表達僅為Visual C++習知語法,有思想與表達合併原則之    適用,應不受著作權法保護,雖兩者變數名稱皆為大小寫    變化之「g_NET」,惟如前述,變數名稱之命名非屬著作    權法所稱之電腦程式著作,並且前述變數名稱皆僅屬單句    或簡短用詞的標語,欠缺著作應具備之最低限度創意性。   (4)綜上所述,臺經院鑑定報告雖認為已琳公司DIRECTOR電腦    程式與上訴人微窗公司COSMOS、GALAXY電腦程式著作之程    式碼有17處相同及相似之部分,惟上訴人程式碼部分為不    受著作權法保護,或受著作權法保護但與被上訴人程式碼    並不構成實質近似,是以就上訴人所提證據及理由,無法    證明被上訴人已琳公司DIRECTOR電腦程式與上訴人GALAXY    及COSMOS電腦程式著作之程式碼構成實質近似。況且,由    上訴人107 年12月14日準備書(二)狀第11頁指出「COSM    OS程式碼共計62,470行(包括.h檔及.cpp檔,但不包含第    三方函式庫約2 萬多行)」,而臺經院鑑定報告指出被上    訴人已琳公司DIRECTOR電腦程式與原告COSMOS、GALA XY    電腦程式著作之程式碼17處相同及相似之部分程式碼並未    達300 行,與上訴人完整著作之行數相較,比例甚小,實    難僅憑該17處程式碼即認定已琳公司係將微窗公司之COSM    OS電腦程式程式原始碼重製及進行修改以完成其DIRECTOR    電腦程式。  (六)上訴人雖主張,微窗公司之COSMOS程式原始碼與已琳公司之   DIRECTOR程式原始碼經臺經院進行比對鑑定後,確認有17個   相同處,且有諸多程式命名、參數、架構、判斷式內容,甚   至註解、拼字錯誤、縮排也一模一樣之情形,顯見已琳公司   係將微窗公司之COSMOS程式原始碼重製後進行修改以完成其   DIRECTOR程式,確屬侵害著作權之行為云云(上訴人108 年   2 月13日言詞辯論意旨狀第5 頁)。惟查,微窗公司與已琳   公司程式碼是否構成實質近似,須先判斷微窗公司之程式碼   是否具有原創性,及該具有原創性之表達內容是否與已琳公   司之程式碼構成相同或近似二方面進行判斷。如前述分析,   臺經院鑑定報告書所指出被上訴人已琳公司DIRECTOR電腦程   式與原告COSMOS、GALAXY電腦程式著作之程式碼17處相同及   相似之部分,微窗公司之程式碼部分為不受著作權保護,部   分雖受著作權保護但與已琳公司程式碼表達方式不同,並不   構成實質近似,故上訴人之主張並不可採。  (七)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   OOOOOOOOOO
六、上訴人主張已琳公司韌體原始碼與微窗公司韌體原始碼相同   處10處(如前審卷一第315至319頁附表編號1至10所示),   是否構成實質近似,而侵害微窗公司著作權?  (一)編號1部分(如附圖37所示):   (1)微窗公司Loadfile.h第107行程式碼為利用習知Visual    C++語法宣告型別為「U1」之變數「pPresetTime」以及利    用Visual C++單行之註解方法「//程式註解」撰寫註解「    pointer of PresetTime 〔〕〔〕,0~7」。前述變數「pP    resetTime」之命名,係使程式撰寫者能辨識該變數,    變數之命名並不直接或間接使電腦產生一定結果,非屬著    作權法所稱之電腦程式著作,並且,變數「pPresetTime    」之命名僅表示該變數為預設時間(Preset Time )相關    之指標,僅屬單句或簡短用詞的標語,欠缺著作應具備之    最低限度創意性,而不受著作權法保護,再者,微窗公司    Loadfile.h 第107 行程式碼OOOOOOOOOOOOOOOOOOO 之「    型別 變數名稱; 」表達方式,僅為Visual C++固有宣告變    數之習知語法,有思想與表達原則之適用,不受著作權法    保護;關於程式註解說明部分,依電腦程式技術領域之通    常知識,程式註解為程式撰寫者於程式原始碼註記說明程    式之意義,在原始碼轉換為目的碼時將略去不予轉換,並    不直接或間接使電腦產生一定結果,非屬著作權法所稱之    電腦程式著作,並且,「pointer of PresetTime〔〕〔    〕」,僅簡單表示其為指向「預設時間」陣列,欠缺著作    應具備之最低限度創意性,而不受著作權法保護。   (2)微窗公司Loadfile .h 第108 行程式碼為利用習知Visual    C++ 語法宣告型別為OOOOOO之陣列變數「PresetTime〔8    〕〔3 〕」,其中「〔8 〕〔3 〕」表示該陣列變數為8    列3 行之陣列變數,以及利用Visual C++單行之註解方法    「//程式註解」撰寫註解「HH :MM :SS」,前述變數「Pr    esetTime」之命名,係使程式撰寫者能辨識該變數,變數    之命名並不直接或間接使電腦產生一定結果,非屬著作權    法所稱之電腦程式著作,並且,陣列變數「PresetTime」    變數之命名表示該變數為預設時間(Preset Time),僅    屬單句或簡短用詞的標語,因欠缺著作應具備之最低限度    創意性,而不受著作權法保護,再者,OOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OO表達方式,表示該陣列變數為8 列3 行之陣列變數,為    Visual C++固有宣告陣列變數之習知語法,有思想與表達    原則之適用,不受著作權法保護;如前所述,註解說明非    屬著作權法所稱之電腦程式著作,並且其註解說明「HH    :MM :SS」,亦屬通用時間參數所具有之時(hour)、分(    minute)及秒(second)等數值,欠缺著作應具備之最低    限度創意性,而不受著作權法保護。綜上所述,上訴人所    主張程式碼部分並不受著作權法保護,不得因被上訴人程    式碼中有相似部分即認為被上訴人侵害上訴人著作權。   (3)上訴人雖主張「如同前審附表『說明一』所載,此乃微窗    公司於設計時,考量使用者需求及為便利使用者之操作,    使系爭電腦程式能附含同時切換諸多不同訊號,並預設各    訊號切換時間、倒數時間等之效果,所特別設計、創作之    參數設計,並自行設定8組時間預設選項供使用者設定。    而於設計程式時,為達成預設時間此一功能之『方式』與    『途徑』甚多,程式設計師具有極大之自由創作設計彈性    ,故不同設計師縱有相同設計目標,然為達此效果所創造    撰寫出之參數及註釋勢必各有不同;而「//」後之註釋部    分,隨著程式設計之個人風格、思考、習慣用語之不同,    更有各種不同之解釋、詮釋創作結果。豈料,已琳公司之    DIRECTOR程式中,竟存有與微窗公司電腦程式『完全相同    』之參數以及附隨註釋,顯屬抄襲之結果」(上訴人108年    2 月13日言詞辯論意旨狀第28頁),惟查,如前所述,上    訴人所提微窗公司Loadfile .h 第107 、108 行程式碼僅    包含利用習知Visual C++語法宣告變數及撰寫註解,並無    法得知上訴人所稱微窗公司為考量使用者需求及為便利使    用者操作,所為之特別設計。再者,上訴人所提微窗公司    Loadfile .h 第107 、108 行程式碼之表達不受著作權法    保護之理由已如前述,不得因被上訴人程式碼中有相同變    數命名及註解部分即認為被上訴人侵害上訴人著作權。  (二)編號2部分(如附圖38所示):   (1)微窗公司Loadfile.h第110至118行程式碼為利用習知Visu    al C++語法宣告型別為OOOOOO之變數「GPITally」、「    GPILP」、「GPIClock」、「GPILPMode」以及利用Visual    C++單行之註解方法「//程式註解」撰寫註解相關註解。    前述變數「GPITally」、「GPILP」、「GPIClock 」、「    GPILPMode」之命名,係使程式撰寫者能辨識該變數,變    數之命名並不直接或間接使電腦產生一定結果,非屬著作    權法所稱之電腦程式著作,並且,變數「GPITally 」、    「GPILP」、「GPIClock」、「GPILPMode」之命名表示該    變數為GPI相關參數之變數,僅屬單句或簡短用詞的標語    ,欠缺著作應具備之最低限度創意性,而不受著作權法保    護,再者,微窗公司Loadfile.h第110至118行所記載之程    式碼OOOOOOOOOOOOOOOO、OOOOOOOOOOOOO、OOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOO之「型別變數名稱;」表達方式    ,僅為Visual C++固有宣告變數之習知語法,有思想與表    達原則之適用,不受著作權法保護;Loadfile.h第110~11    8行其餘之部分為利用Visual C++單行之註解方法「//程    式註解」撰寫註解,如前所述,註解說明非屬著作權法所    稱之電腦程式著作,並且其註解說明之表達僅為「defaul    t:預設值,位元說明」簡記變數之預設值(default),與    各位元之用途,欠缺著作應具備之最低限度創意性,而不    受著作權法保護。   (2)上訴人雖主張「如同前審附表後『說明二』所載,此部分    乃微窗公司程式設計師為完成諸多程式效果,因而設計出    『GPI』、『GPO』等子程式,而GPI此一詞彙雖經業界廣    泛使用,然不同設計師所設計之GPI『程式內容』各不相    同,此由設計師當時之設計日誌(參前審上證二十一(前審    卷二第203-206頁)、設計師間多次信件往返之討論內容(    參前審上證二十二(前審卷二第207-221頁)、微窗公司    GPI程式之實際內容說明(參前審上證二十三,前審卷二第    222 -223頁)等資料,均足以證明GPIO程式係經過微窗公    司設計師詳細討論、一再修正、納入諸多不同設計後所完    成,絕非如被上訴人所誆稱可任意由網路複製取得者。況    且,再由其他同類型產品公司Miranda、Wohler兩家公司    之GPIO程式內容說明(參前審上證二十三,前審卷二第    222-223 頁),明顯與微窗公司之程式內容大不相同乙節    ,更足證同類型產品於應用GPIO程式時,必皆有不同之設    計內容、方式、途徑,則已琳公司幾乎完全相同之參數內    容,顯係抄襲重製之結果,甚為明確」(上訴人108 年2    月13日言詞辯論意旨狀第25-26 頁)。惟查,上訴人所提    微窗公司Load file .h第110 至118 行程式碼為利用習知    Visual C++語法宣告型別為「U1」之變數「GPITally」、    「GPILP 」、「GPI Clock 」、「GPILPMode 」以及利用    Visual C++單行之註解方法「//程式註解」撰寫註解相關    註解,並無法得知上訴人所稱「GPIO程式係經過微窗公司    設計師詳細討論、一再修正、納入諸多不同設計後所完成    」,再者,微窗公司Loadfile.h 第110-118 行程式碼不    受著作權法保護之理由已如前述,不得因被上訴人程式碼    中有相同變數命名及相似註解即認為被上訴人侵害上訴人    著作權。況且,已琳公司程式碼file.h第191至201行程式    碼註解中並未包含「bit4」相關之註解,「bit0~1」、「    bit2~3」之註解亦與微窗公司Loadfile.h第110-118行程    式碼不相同,並無上訴人所稱「已琳公司幾乎完全相同之    參數內容」,故上訴人之主張並不可採。   (3)上訴人雖主張「由微窗公司所提說明二之內容可知,微窗    公司對於此GPIO程式之『內容』具有特殊創作性,此由註    釋中描述呈現:『位元1代表往上數、位元3表示往下數、    位元5表示暫停、位元7配合參數顯現』等特殊設計,足資    佐證。然而,被上訴人不思重新修改設計,對於此本可隨    意調整、替換設定之程式內容完全照抄,顯見被上訴人確    有侵害微窗公司著作權之行為」(上訴人108年2月13日言    詞辯論意旨狀第26-27頁),惟查,上訴人所述「『位元1    代表往上數、位元3表示往下數、位元5表示暫停、位元7    配合參數顯現』等特殊設計」屬思想部分,並不受著作權    法所保護,不得因被上訴人註解有相同技術思想,即認為    被上訴人侵害上訴人著作權。再者,如前所述,註解說明    非屬著作權法所稱之電腦程式著作,並且其註解說明之表    達僅為「default:預設值,位元說明」簡記變數之預設值(    default),與各位元之用途,欠缺著作應具備之最低限    度創意性,而不受著作權法保護,故上訴人之主張並不可    採。  (三)編號3部分(如附圖39所示):   (1)微窗公司Loadfile.h第121至131行程式碼為利用習知Visu    al C++語法宣告型別為OOOOOO之陣列變數「TSLAddre    ssMode〔8〕」及「TSLAddressIndex〔16〕」(其中「〔8    〕」、「〔16〕」表示該陣列變數「TSLAddressMode〔8    〕」包含8個元素,「TSLAddressIndex〔16〕」包含16個    元素),以及利用Visual C++單行之註解方法「//程式註    解」撰寫註解,如前所述,變數「TSLAddressMode」、「    TSLAdd ressIndex」之命名,係使程式撰寫者能辨識該變    數,變數之命名並不直接或間接使電腦產生一定結果,非    屬著作權法所稱之電腦程式著作,並且,變數「TSLAddre    ssMode」、「TSLAddressIndex」之命名僅表示該變數與    TSL位置模式與TSL位置指標相關,欠缺著作應具備之最低    限度創意性,而不受著作權法保護。再者,「U1TSLAddre    ssMode〔8〕;」、「U1TSLAddres sIndex〔16〕;」之「    型別 變數名稱〔整數〕;」表達方式,表示該陣列變數為    具有8元素及16元素之陣列變數,為Visual C++固有宣告    陣列變數之習知語法,有思想與表達原則之適用,不受著    作權保護;並且,如前所述,註解說明非屬著作權法所稱    之電腦程式著作,並且其註解說明僅簡單列出各byte、    bits設定值之意義,欠缺著作應具備之最低限度創意性,    而不受著作權法保護。綜上,上訴人所主張程式碼部分並    不受著作權法保護,不得因被上訴人程式碼中有相似部分    即認為被上訴人侵害上訴人著作權。   (2)上訴人雖主張「如同前審附表後『說明三』所載,此乃微    窗公司程式設計師為完成諸多程式效果,因而應用『TSL    』此一子程式,並於其內容中作出諸多具有獨創性之設計    ,雖然『TSL』子程式為業界知悉之資訊,惟各種程式於    應用TSL程式時,本必有不同之設計『內容、方式、途徑    』,然已琳公司之TSL程式幾乎完全相同於微窗公司之程    式參數內容,顯係抄襲重製之結果,甚為明確」(上訴人    108 年2月13日言詞辯論意旨狀第27頁),惟查,程式註    解為程式撰寫者於程式原始碼注記說明程式之意義,在原    始碼轉換為目的碼時將略去不予轉換,並不直接或間接使    電腦產生一定結果,是以僅由上訴人所提微窗公司Loadfi    le.h第121至131行程式碼記載之註解及變數命名,實難推    知上訴人所稱「如同前審附表後『說明三』所載,此乃微    窗公司程式設計師為完成諸多程式效果,因而應用『TSL    』此一子程式,並於其內容中作出諸多具有獨創性之設計    」,況且,已琳公司程式碼file.h第181至189行程式碼註    解中並未包含「bit3」、「bit4」相關之註解,「bit7」    、「bit6」之註解,亦與微窗公司Loadfile.h第121至131    行程式碼不相同,並無上訴人所稱「已琳公司之TSL程式    幾乎完全相同於微窗公司之程式參數內容」,故上訴人之    主張並不可採。   (3)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO   (4)上訴人又主張「至於陣列大小不同部分,已琳公司僅是將    微窗公司一個大小為8 的陣列(TSLAddressMode〔8 〕)    拆成兩個大小為4 的陣列(TSLAddress〔4 〕、TSLMode    〔4 〕)呈現而已,導致行數稍有不同,然此僅屬無實質    意義之換行變更,未影響其抄襲致實質相同之結果,不容    被上訴人惡意混淆」(上訴人108 年2 月13日言詞辯論意    旨狀第28頁),惟查已琳公司file .h 第181 至182 行程    式碼變數之表達為「U1 TSLAddress 〔4 〕; 」、「U1TS    LMode 〔4 〕; 」與微窗公司Loadfile .h 第121 行程式    碼變數之表達「U1 TSLAddressMode 〔8 〕; 」並不相同    ,難謂已琳公司file .h 第181 至182 行程式碼變數之表    達侵害微窗公司之著作權,再者,微窗公司Loadfile .h    第121~131行程式碼之表達不受著作權法保護之理由已如    前述,故上訴人之主張並不可採。  (四)編號4部分(如附圖40所示):   (1)微窗公司Loadfile.h 第132 、133 行程式碼為利用習知    Visual C++ 語法宣告型別為OOOOOO之陣列變數「GateWa    y[ 4〕」與「NTPServer 〔4 〕」以及型別為OOOOOO之變    數「NTPPeriode 」,其中「〔4 〕」表示該陣列變數包    含8 個元素,以及利用Visual C++單行之註解方法「//程    式註解」撰寫註解OOOOOOOOOOOOOOOOOOOOOOOOOOOO,如前    所述,變數「GateWay 」、「NTPServer 」與「NTPPerio    de」之命名,係使程式撰寫者能辨識該變數,變數之命名    並不直接或間接使電腦產生一定結果,非屬著作權法所稱    之電腦程式著作,退步言,變數名稱「GateWay 」為網際    網路專有名稱「閘道器」之原文,NTPServer 表示該變數    為網路時間協定伺服器(NTP Server,Network Time    Protocol Server )相關之變數,NTPPeriode表示該變數    與對網路時間協定伺服器NTP(NTP Server ,Network    Time Protocol Server)抓取時間訊息的時間間隔相關,    欠缺著作應具備之最低限度創意性,而不受著作權法保護    。再者,「U1 GateWay〔4 〕,NTPServer〔4 〕; 」之「    型別變數名稱[ 整數〕, 變數名稱[ 整數〕; 」表達方式    ,表示同時宣告型別為「U1」之陣列變數「GateWay 〔4    〕」與「NTPServer 〔4 〕」,「U2 NTPPeriode ;」之    「型別變數名稱; 」表達方式,表示宣告型別為「U2」之    變數「NTPPeriode」,皆為Visual C++固有宣告陣列變數    之習知語法,有思想與表達原則之適用,不受著作權法保    護;如前所述,註解說明非屬著作權法所稱之電腦程式著    作,並且其註解內容「default=30=30minutes」僅以短語    表示該時間之預設值為30,即30分鐘,欠缺著作應具備之    最低限度創意性,而不受著作權法保護。綜上所述,微窗    公司Loadfile.h第132至133行所記載之程式碼之表達應不    受著作權法保護,不得因被上訴人程式碼中有相同變數命    名部分即認為被上訴人侵害上訴人著作權。   (2)上訴人雖主張「編號4 相同之參數『GateWay 』、『NTPS    erver』、『NTP period』雖為常用參數,然而於不同程    式設計師使用於其所創作之電腦程式著作時,本必然有不    同之描述文字及變化,無論於大小寫、是否加底線等均可    變化,然已琳公司之程式內容竟與微窗程式完全相同,未    有任何變化,足證確屬重製、抄襲而來…另被上訴人又割    裂參數之文字,稱gateway 、NTPServer 等『文字』不受    著作權法保護云云,顯無可採」(上訴人108 年2 月13日    言詞辯論意旨狀第28頁),惟如前述,微窗公司Loadfile    .h第132 至133 行所記載之程式碼之表達應不受著作權法    保護,不得因被上訴人程式碼中有相同變數命名部分即認    為被上訴人侵害上訴人著作權。再者,已琳公司程式碼    file.h 第176 行程式碼OOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOO等變數與陣列變數,file.h 第177    行程式碼「OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    」為宣告OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO等變數後加    入註解OOOOOOOOOOOOOOOO,而微窗公司Loadfile .h 第    132 行程式碼為利用習知Visual C++語法宣告型別為「U1    」之陣列變數「GateWay 〔4 〕」與「NTPServer 〔4 〕    」兩陣列變數,Loadfile .h 第132 行程式碼為宣告「NT    PPeriod 」變數後加入註解OOOOOOOOOOOOOOOOOOOOOOOOOO    ,兩者整體表達並不相同,故上訴人之主張並不可採。  (五)編號5部分(如附圖41所示):   (1)微窗公司Loadfile.h第194行所記載之OOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOO為利用Visual C++註解語法「//註解」加入變數    「ClockSwitch」的註解OOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO,該註    解表示OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO ,然而,如前所述,    註解說明非屬著作權法所稱之電腦程式著作,再者,該註    解僅以OOOOOOOOOOOOOOOO表示第OOOOOOOO儲存時間來源相    關資料,「數字= 時間來源」表示時間來源定義內容,該    些表達方式欠缺著作應具備之最低限度創意性,而不受著    作權法保護。   (2)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO  (六)編號6部分(如附圖42所示):   (1)微窗公司Loadfile.h第256行程式碼OOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO為利用習知    Visu al C++ 語法宣告型別為OOOOOO之變數「SDWR」、「    SDHR」、「HDWR」、「HDHR」以及利用Visual C++單行之    註解方法「//程式註解」撰寫註解OOOOOOOOOOOOOOOO    OOOOOOOOOOOOOO,如前所述,變數「SDWR」、「SDHR」    、「HDWR」、「HDHR」之命名並不直接或間接使電腦產生    一定結果,非屬著作權法所稱之電腦程式著作,再者,「    SDWR」、「SDHR」、「HDWR」、「HDHR」之命名表示該變    數為SD、HD影像比例相關之變數,僅屬單句或簡短用詞的    標語,欠缺著作應具備之最低限度創意性,而不受著作權    法保護。再者,微窗公司Loadfile .h 第256 行所記載之    程式碼OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 「型別變數    名稱, 變數名稱, 變數名稱, 變數名稱; 」表達方式,僅    為Visual C++固有宣告變數之習知語法,有思想與表達原    則之適用,不受著作權法保護;Loadfile.h第256行其餘    之部分為利用Visual C++單行之註解方法「//程式註解」    撰寫註解OOOOOOOOOOOOOOOOOOOOOOOOOOOO,如前所述,註    解說明非屬著作權法所稱之電腦程式著作,並且其註解說    明之表達僅為簡記變數為SD、HD影像寬度高度比例相關,    欠缺著作應具備之最低限度創意性,而不受著作權法保護    。   (2)上訴人雖主張「由微窗公司之程式設計師討論往來郵件紀    錄可知(參見前審上證二十二,詳前審卷二第207-221頁)    ,此部分參數係經設計師多次討論、修正後所創設,足證    該參數內容確具獨特性、創造性,應受著作權法之保護」    (上訴人108年2月13日言詞辯論意旨狀第29頁),惟如前述    ,微窗公司Loadfile .h 第256 行程式碼OOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO為利    用習知Visual C++語法宣告型別為OOOOOO之變數「SDWR」    、「SDHR」、「HDWR」、「HDHR」以及利用Visual C++單    行之註解方法「//程式註解」撰寫註解OOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOO,由Loadfile.h 第256 行程式碼並無    法看出該參數內容之獨特性與創造性為何,故上訴人之主    張並不可採。   (3)上訴人雖主張「被上訴人雖辯稱其程式內有『4、3、16、    9 』等數字云云,然查,該等數字僅為影像比例之『預設    值』,微窗公司之程式內容亦有包含,僅僅是未列於同一    行,此有微窗公司程式內容資料可佐(參見前審上證二十    四,詳前審卷二第224至227頁),故被上訴人辯稱其程式    有所不同云云,自無可採」,惟查,微窗公司Loadfile.h    第256行程式碼之表達不受著作權法之保護理由已詳述如    前,再者,已琳公司file.h第341行程式碼之表達為數字    「4 ,3,16,9,」後加入註解OOOOOOOOOOOOOOOOOOOOOOOOOO    OOO,即使微窗公司Loadfile.h程式碼在其他地方也具有    「4, 3,16,9,」,已琳公司file.h第341行程式碼與上訴    人微窗公司Loadfile.h第256行程式碼之表達依然不同,    故上訴人之主張並不可採。  (七)編號7部分(如附圖43所示):   (1)微窗公司Loadfile.h第267行程式碼OOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOO 為利用習知Visual C++語法宣告型別為    「U2」之變數「SALeft」、「SARight」、「SAUp」、「    SADown」,如前所述,變數「SALeft」、「SARight」、    「SAUp」、「SADown」之命名並不直接或間接使電腦產生    一定結果,非屬著作權法所稱之電腦程式著作,再者,「    SALeft」、「SARight」、「SAUp」、「SADown」之命名    表示該變數為安全區域的左邊(Left)、右邊(Right)及    上下邊(Up、Down)相關之變數,僅屬單句或簡短用詞的    標語,欠缺著作應具備之最低限度創意性,而不受著作權    法保護。再者,微窗公司Loadfile .h 第267 行所記載之    程式碼OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO「型    別變數名稱, 變數名稱, 變數名稱, 變數名稱; 」表達方    式,僅為Visual C++固有宣告多個變數之習知語法,有思    想與表達原則之適用,不受著作權法保護。綜上所述,微    窗公司Loadfile    . h第267行所記載之程式碼不受著作權法保護,不得因被    上訴人程式碼中有相似變數命名部分即認為被上訴人侵害    上訴人著作權。   (2)雖上訴人主張「如同前審附表後『說明七』所載,此乃微    窗公司程式設計師為達成紀錄安全區域顯示範圍上下左右    之效果,而設計獨特途徑、方法之參數,並自行命名為『    SALeft』、『SARight 』、『SAUp』、『SADown』,足證    該等參數內容與名稱均具有獨特性,應受著作權法所保護    」(上訴人108 年2 月13日言詞辯論意旨狀第30頁),惟    如前述,變數「SALeft」、「SARight 」、「SAUp」、「    SADow n 」之命名並不直接或間接使電腦產生一定結果,    非屬著作權法所稱之電腦程式著作,再者,「SALeft」、    「SARight」、「SAUp」、「SADown」之命名表示該變數    為安全區域的左邊(Left)、右邊(Right )及上下邊(    Up、Down)相關之變數,僅屬單句或簡短用詞的標語,欠    缺著作應具備之最低限度創意性,而不受著作權法保護,    故上訴人之主張並不可採。  (八)編號8 部分(如附圖44所示):   (1)微窗公司Loadfile .h 第280 、281 行程式碼OOOOOOOOOO    OOOOO 、OOOOOOOOOOOOOOO ; 」為利用習知Visual C++語    法宣告型別為OOOOOOOO之變數OOOOOOOO、型別為OOOOOOOO    之陣列變數OOOOOOOOOOOOO ,其中,OOOOOOOO、OOOOOOOO    為程式設計者自定義之結構(struct)名稱,如前所述,    變數「MCS 」、「MPS 」之命名並不直接或間接使電腦產    生一定結果,非屬著作權法所稱之電腦程式著作,結構名    稱為程式設計者自行命名以使程式設計者後續能記憶並使    用程式設計者自行定義之結構,結構之命名並不直接或間    接使電腦產生一定結果,會直接或間接使電腦產生一定結    果者為結構實質之內容,故結構之命名非屬著作權法所稱    之電腦程式著作,再者,「sMCS」、「MCS 」、「sMPS」    、「MPS 」之命名為簡單三或四字母所組成,難以理解程    式設計者之思想或情感,欠缺著作應具備之最低限度創意    性,而不受著作權法保護。再者,微窗公司Loadfile .h    第280 行所記載之程式碼OOOOOOOOOOOOO 之「結構名稱變    數名稱; 」表達方式與281 行所記載之程式碼OOOOOOOOOO    OOOOOOOOO 之「型別變數名稱〔整數〕; 」表達方式,僅    為Visual C++固有宣告結構變數、結構陣列之習知語法,    有思想與表達原則之適用,不受著作權法保護。綜上所述    ,微窗公司Loadfile .h 第280 、281 行所記載之程式碼    不受著作權法保護,不得因被上訴人程式碼中有相似變數    命名部分即認為被上訴人侵害上訴人著作權。   (2)雖上訴人主張「被上訴人不思重新修改設計,一字不改全    部抄襲、重製,足證被上訴人確有侵害微窗公司著作權之    行為。被上訴人雖辯稱兩者行數不同云云,然該等變數僅    係無實質意義之調整,不影響兩者參數結構完全相同之本    質」(上訴人108 年2 月13日言詞辯論意旨狀第30-31頁)    ,惟如前述,微窗公司Loadfile.h 第280 、281 行所記    載之程式碼不受著作權法保護,不得因被上訴人程式碼中    有相似變數命名部分即認為被上訴人侵害上訴人著作權。    再者,上訴人所提Loadfile .h 第280 、281 行程式碼「    OOOOOOOOOOOO、OOOOOOOOOOOOOOOOO 所在之結構sFILE 與    被上訴人file.h 第353 、354 行程式碼OOOOOOOOOOOOOO    、OOOOOOOOOOOOOOOOO 所在之結構sPreset(參圖44:韌體    程式原始碼「附表十處」編號8 部分;前審上訴人所提微    窗原始碼與已琳原始碼比較(前審卷(二) 第15頁至19頁    背面))並不相同,file.h 之結構sPreset 尚包含「U1    」與「U4」型別之變數,該些變數將影響被上訴人file .    h 中結構sPreset 之使用,並非上訴人所稱「該等變數僅    係無實質意義之調整,不影響兩者參數結構完全相同之本    質」,故上訴人之主張並不可採。  (九)編號9 部分(如附圖45所示):   (1)微窗公司Loadfile .c 第94行所記載之OOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOO 表示程式在第94行前曾    宣告一結構變數「SYSCFG」,該結構包含一陣列變數「    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO,並在Loadfile .c 第    94行末加入註解OOOOOOOOOOOOOOOOOOOOOO,如前所述,變    數「SYSCFG」、「NTP Server」之命名並不直接或間接使    電腦產生一定結果,非屬著作權法所稱之電腦程式著作,    再者,「SYSCFG」表示該變數為系統設定相關之變數,「    NTPServer 」表示該變數為網路時間協定伺服器(NTP    Server,Network Time Protocol Server)相關之變數,    欠缺著作應具備之最低限度創意性,而不受著作權法保護    。OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOO表達方式,表示設定結構變    數「SYSCFG」中陣列變數「NTPServer 」的元素值,為    Visual C++固有宣告陣列變數之習知語法,有思想與表達    原則之適用,不受著作權法保護;如前所述,註解說明非    屬著作權法所稱之電腦程式著作,並且其註解內容「time    .nist .gov」為美國國家標準技術研究所之網域( Domain    )名稱( time .nist .gov ),非上訴人所能獨佔使用。    綜上所述,微窗公司Loadfile .h 第94行所記載之程式碼    之表達應不受著作權法保護。   (2)上訴人雖主張「此乃微窗公司程式設計師為達成隨時同步    校正時間之效果,而由全世界眾多可任意選用之伺服器中    ,特別設定此一伺服器,作為系爭程式與外部連線校正時    間之方法與途徑。是以,倘被上訴人乃獨立之新創作程式    ,絕無可能恰好於上萬種開放性選項中,碰巧選擇與微窗    公司程式設定相同之校正伺服器,足見已琳公司之程式實    屬全盤抄襲,根本不曾重新選擇修改」(上訴人108 年2    月13日言詞辯論意旨狀第31頁),惟由全世界眾多可任意    選用之伺服器中選擇一伺服器屬於思想部分,不受著作權    法所保護,即使被上訴人選擇相同之伺服器作為系爭程式    與外部連線校正時間之方法與途徑,亦難謂被上訴人侵害    上訴人之著作權,再者,上訴人所主張上訴人程式中設定    該伺服器連線網址之表達部分並不受著作權法所保護,況    且,上訴人所提已琳公司程式中設定該伺服器連線網址之    表達部分OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOO 與微窗公司程式中設定該伺服器連線網址之表達    部分OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOO 並不相同,故上訴人之主張並不可採。  (十)編號10部分(如附圖46所示):   (1)微窗公司main.c中之語句OOOOOOOOOOOOOOOOOOOOOOO為利    用習知Visual C++語法設定變數「BSA.sin_port」之值為    60102,main. c中之語句OOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO為利用習知Visual C++    語法呼叫函式OOOOOOOOOOOOOOOOOOOOOOOO並傳入參數「    &BSA .sin_addr」,以及設定變數「BSA .sin_port 」之    值為605 28,其中OOOOOOOOOOOOOOOOOO表示利用「& 」運    算子取得變OOOOOOOOOOOOOOOOOOOO之記憶體位置;前述函    式「getnetwo rkparams 」之命名,係使程式撰寫者能辨    識該函式,函式之命名並不直接或間接使電腦產生一定結    果,非屬著作權法所稱之電腦程式著作;前述變數「BSA    」、「sin_addr」、「sin_port」之命名並不直接或間接    使電腦產生一定結果,非屬著作權法所稱之電腦程式著作    ,並且,函式「getnetworkparams」之命名表示該函式與    取得網路參數相關、「BSA 」之命名為簡單三字母所組成    ,難以理解程式設計者之思想或情感,「sin_addr」、「    sin_port」之命名表示該變數為網路位置、埠號相關之變    數,僅屬單句或簡短用詞的標語,皆欠缺著作應具備之最    低限度創意性,而不受著作權法保護。再者,微窗公司    main .c OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOO之「函式名稱( 參數); 」與「    變數名稱= 變數值」表達方式,僅為Visual C++固有呼叫    函式與設定變數值之習知語法,有思想與表達原則之適用    ,不受著作權法保護。   (2)上訴人雖主張「COSMOS/GALAXY 電腦程式中存有與機器溝    通之『開機連線程序』,該程序運作時,需要經由『通訊    埠』聯絡溝通,而微窗公司於設計程式當時,經由多次測    試、過濾、篩選、抉擇後,始決定佐以研發工程師吳堂文    之生日05月28日,設定為偵測機器廣播封包使用之『目的    端口數值60528 』;另再以研發工程師黃義堃之生日01月    02日,設定為『接收回傳資料端口數值60102 』,故該等    數值實亦為微窗公司COSMOS/GALAXY 電腦程式之特殊暗記    。而上開兩組號碼既係由微窗公司程式設計師思考、測試    、篩選、組合後所選用設定之通訊號碼,作為機器與程式    間廣播聯絡憑植,並與具獨創性之主程式相結合,成為整    體程式之一部分,自屬著作權法保護之標的」云云(上訴    人108 年2 月13日言詞辯論意旨狀第32頁),惟查,該兩    組號碼之選擇屬於思想部分,不受著作權法所保護。再者    ,上訴人所提已琳公司程式中運用該兩組號碼之表達OOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO與微窗    公司程式中運用該兩組號碼之表達OOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO    OOOOOOOOOOOOOOOOO ,並不相同,故上訴人之主張並不可    採。」           智慧財產法院第二庭              審判長法 官 汪漢卿                 法 官 熊誦梅                 法 官 彭洪英               

沒有留言:

張貼留言