I35v3533 100年09月13日核正替換頁 六、發明說明: 【發明所屬之技術領域】 [0001] 本發明涉及命令統計裝置及方法。 【先前技術】 [0002] 隨著電腦應用軟體的日益發展,提供命令個性化定製功 能已經成為眾多應用軟體之主要賣點,然,隨著新命令 不斷被開發出來以實現工作所需之新功能,同時原有命 令不斷被優化或升級以方便軟體使用者使用,命令體系 變得日益龐大,使用困難日增,尤其對於初學者更是如 此。但實際工作中,往往只有一部分命令被經常使用, 故,一般的軟體使用者若能先掌握這些常用命令,就能 更快學會使用該等應用軟體,而且,命令開發人員即編 程者也需要根據命令的實際使用情況來對軟體介面及命 令進行優化與改進。 [0003] 然,目前對命令及其使用狀況的統計係通過人工對熟練 軟體使用者進行調查,並手動整理出統計結果,從而需 要消耗大量人力和時間,且統計結果往往太過主觀,統 計範圍也較侷限。 【發明内容】 [0004] 有鑑於此,需提供一種命令自動統計裝置,能自動統計 命令及其使用狀況。 [0005] 此外,還需提供一種命令自動統計方法,能自動統計命 令及其使用狀況。 [0006] 一種命令自動統計裝置,用於統計複數命令及其使用狀 097108056 表單編號A0101 第3頁/共21頁 1003331980-0 1353533 100年09月13日修正巷换言 況,其包括一偵測模組、一判斷模組及一記錄模組。偵 測模組用於偵測被使用之命令及其使用狀況。判斷模組 用於判斷偵測模組所偵測到的命令是否係採用鏈表處理 語言所自行開發之電腦輔助設計軟體命令,並判斷所確 定的採用鏈表處理語言所開發的命令係被軟體使用者調 用之命令還係被軟體自身調用之命令。記錄模組用於記 錄被軟體使用者調用之採用鏈表處理語言所自行開發之 電腦輔助設計軟體命令及其使用狀況。I35v3533 September 13, 100 Nuclear Replacement Page VI. Description of the Invention: [Technical Field of the Invention] [0001] The present invention relates to a command statistical device and method. [Prior Art] [0002] With the development of computer application software, the provision of command customization has become a major selling point for many application software. However, as new commands are continuously developed to achieve new functions required for work. At the same time, the original commands are continuously optimized or upgraded to facilitate the use of software users, and the command system has become increasingly large and difficult to use, especially for beginners. However, in practice, only a part of the commands are often used. Therefore, if the general software user can master these common commands first, they can learn to use the application software more quickly, and the command developer, that is, the programmer, also needs to The actual use of the command to optimize and improve the software interface and commands. [0003] However, the current statistics on the order and its use status by manually surveying skilled software users, and manually sort out the statistical results, which requires a lot of manpower and time, and the statistical results are often too subjective, statistical scope Also more limited. SUMMARY OF THE INVENTION [0004] In view of this, it is desirable to provide a command automatic statistics device that can automatically count commands and their usage status. [0005] In addition, a command automatic statistical method is needed to automatically count commands and their usage status. [0006] A command automatic statistical device for counting a complex command and its use form 097108056 Form No. A0101 Page 3 / 21 pages 1003331980-0 1353533 100 September 13, revised lane change, including a detection Module, a judgment module and a record module. The detection module is used to detect the commands being used and their usage. The judging module is configured to judge whether the command detected by the detecting module is a computer-aided design software command developed by the linked list processing language, and judges that the determined command system developed by the linked list processing language is software. The command invoked by the user is also a command that is called by the software itself. The recording module is used to record the computer-aided design software commands and their usage status developed by the software user in the linked list processing language.
[0007] —種命令自動統計方法,用於統計複數命令及其使用狀 況,包括如下步驟:偵測被使用之命令及其使用狀況; 判斷所偵測到的命令是否係採用鏈表處理語言所自行開 發之電腦輔助設計軟體命令;若該偵測到的命令之類型 係採用鏈表處理語言所自行開發之電腦輔助設計軟體命 令,則判斷該命令係被軟體使用者調用之命令還係被軟 體自身調用之命令;及若命令係被軟體使用者調用之命 令,則記錄該命令及其使用狀況。[0007] A command automatic statistical method for counting a complex command and its usage status, comprising the steps of: detecting a used command and its usage status; determining whether the detected command is in a linked list processing language Self-developed computer-aided design software command; if the type of the detected command is a computer-aided design software command developed by the linked list processing language, the command to be invoked by the software user is determined to be the software. The command invoked by itself; and if the command is a command invoked by the software user, the command and its usage status are recorded.
[0008] 藉由以下對具體實施方式詳細的描述並結合附圖,將可 輕易的瞭解上述内容及此項發明之技術效果。 【實施方式】 [0009] 參閱圖1,所示為本發明命令自動統計裝置10—實施方式 之結構圖。在本實施方式中,命令係電腦常用之大型應 用軟體之命令,如電腦輔助設計(Computer Aided Design,CAD)軟體之命令。其中,常用之大型應用軟 體通常提供龐大的命令體系,同時還提供強大的命令自 行開發功能,且一般情況下會有多種開發工具支援此類 097108056 表單编號A0101 第4頁/共21頁 1003331980-0 1353533 100年09月13日核正替換頁 自行開發,故,命令通常包括軟體自身提供與編程者自 行開發兩類,其中編程者自行開發之命令還包括編程者 對軟體自身提供之命令進行優化或升級後所得到之命令 。在本實施方式中,軟體係電腦輔助設計軟體,目前市 面上支持編程者自行開發電腦輔助設計軟體之命令之開 發工具或開發語言主要為ObjectARX與鏈表處理語言(The above and the technical effects of the invention will be readily understood by the following detailed description of the embodiments and the accompanying drawings. [Embodiment] Referring to Fig. 1, there is shown a block diagram of an embodiment of an automatic command counting apparatus 10 of the present invention. In the present embodiment, the command is a command of a large application software commonly used by a computer, such as a computer Aided Design (CAD) software command. Among them, commonly used large-scale application software usually provides a huge command system, and also provides powerful command self-development functions, and generally there are multiple development tools to support such 097108056 form number A0101 page 4 / 21 pages 1003331980- 0 1353533 On September 13, 100, the nuclear replacement page was developed by itself. Therefore, the command usually includes two types of software itself and the programmer's own development. The commands developed by the programmer include the programmer's optimization of the commands provided by the software itself. Or the command obtained after the upgrade. In the present embodiment, the software-aided design software of the soft system, the development tool or the development language that supports the programmers to develop the computer-aided design software on their own, mainly the ObjectARX and the linked list processing language (
List Processor > LISP) ° [0010] 命令自動統計裝置10包括一統計模組12、一上傳模組14 及一應用模組16。 [0011] 統計模組12用於統計複數命令及其使用狀況,其包括一 設置模組120、一偵測模組122、一判斷模組124、一記 錄模組126及一轉換模組128。 [0012] 設置模組120用於設置命令列表,其包括所有編程者開發 之命令。其中命令列表可採用資料庫、資料表、配置文 件或匹灰條件等形式。 [0013] 偵測模組122用於偵測被使用之命令及其使用狀況。其中 命令使用狀況包括命令使用次數、軟體及運行軟體之操 作系統之基本資訊,如軟體名稱及版本、軟體使用人員 資訊、命令使用時間等。在本實施例中,偵測模組122藉 由安裝命令觸發程式來自動偵測被使用之命令。命令觸 發程式會自動偵測到被使用的命令,其中包括軟體使用 者調用之命令與軟體自身調用之命令兩類。在本實施方 式中,命令自動統計裝置10僅統計被軟體使用者調用之 命令。 097108056 表單編號A0101 第5頁/共21頁 1003331980-0 1353533 100年09月13日修正替換頁 [0014] 判斷模組1 2 4用於判斷偵測模組1 2 2所偵測之命令之類型 ,並根據其類型判斷命令是否屬於統計範圍。其中,命 令之類型包括採用不同開發工具所開發之命令,統計範 圍包括所有需要統計的命令。判斷模組124透過將命令分 為兩個或多個類型以採用不同之統計方法來統計,能有 效提昇統計速度。在本實施方式中,統計範圍包括所有 編程者自行開發且軟體使用者調用之命令。在本實施方 式中,命令之類型包括編程者採用開發工具ObjectARX 與鏈表處理語言等開發工具所開發之電腦輔助設計軟體 • 之命令。 [0015] 在本發明的一實施例中,判斷模組124確定命令係採用開 發工具ObjectARX所開發之命令,則判斷模組124還用於 判斷採用開發工具Ob j ectARX所開發之命令是否能匹配 設置模組120所設置之命令列表。若判斷模組斷定命令不 能匹配命令列表,則將該命令丟棄,不做統計。由於軟 體自身提供之命令亦多採用開發工具ObjectARX所開發 ,故統計模組12藉由判斷模組124所做之「命令是否能匹 φ 配命令列表」之判斷來丟棄軟體自身提供之命令。 [0016] 在本發明的另一實施例中,判斷模組124確定命令係採用 鏈表處理語言所開發之命令,則判斷模組124還用於判斷 採用鏈表處理語言所開發之命令係被軟體使用者調用之 命令還係被軟體自身調用之命令。若判斷模組斷定命令 係被軟體自身調用之命令,則將該命令丟棄,不做統計 。在本實施方式中,判斷模組124藉由判斷命令之長度來 判斷其是否係被軟體使用者調用。若命令之長度超過一 097108056 表單編號A0101 第6頁/共21頁 1003331980-0 1353533 100年09月13日按正替換頁 預設長度值,則斷定其係被軟體使用者調用,若其長度 未超過一預設長度值,則斷定其係被軟體自身調用。 [0017] 轉換模組128用於轉換軟體使用者調用之命令之格式。由 於採用鏈表處理語言所開發之命令往往與採用開發工具 ObjectARX所開發之命令之格式不同,故需要轉換命令 格式以便於統計。在本實施方式中,採用鏈表處理語言 所開發之命令之名稱前帶有一特殊標記,如「C:」,故 ,統計模組12藉由轉換模組128將此類命令之特殊標記去 ¥ 除,以便於統計。 [0018] 記錄模組126用於記錄判斷模組124確定屬於統計範圍之 命令及其使用狀況。在本實施方式中,記錄模組126將命 令及其使用狀況記錄到本地的命令自動統計裝置10中, 具體可採用資料庫、資料表或配置文件來存儲命令及其 使用狀況。其中命令使用狀況包括命令使用次數。在本 發明的一實施例中,記錄模組126還用於記錄判斷模組 124所確定之能匹配命令列表之命令及其使用狀況。在另 • 一實施例中,記錄模組126還用於根據轉換模組128轉換 後的格式記錄命令及其使用狀況。 [0019] 上傳模組14用於將統計模組12所記錄之命令及其使用狀 況上傳到伺服器20。在本實施方式中,為了防止頻繁訪 問伺服器20,記錄模組126先將命令及其使用狀況存儲在 本地的命令自動統計裝置10中,並當一預設時間到來時 或一預設條件成立時,上傳模組14才將統計模組12所記 錄之命令及其使用狀況上傳到伺服器20,其中預設時間 可為每天的一個具體時間點或每週的某一天的一個具體 097108056 表單編號 A0101 第 7 頁/共 21 頁 1003331980-0 1353533 100年09月13日梭正替換百 時間點等,預設條件可為每天軟體第一次運行等,具體 可根據統計需要進行設定。在本實施方式中,伺服器20 通過網路與複數本地命令統計裝置10相連,此時,伺服 器20中包括複數命令自動統計裝置10所統計之命令及其 使用狀況。在其他實施方式中,伺服器20亦可為該等本 地命令統計裝置10之一。 [0020] 應用模組16用於根據上傳模組14上傳到伺服器20上之命 令及其使用狀況將該等命令進行排序。在本實施方式中 ,應用模組16根據命令使用次數對命令進行降序排列, 排在前面之命令即為使用者常用之命令。從而,應用模 組16可以依據命令之使用狀況來優化程式,以及依據命 令之使用狀況進行教育訓練安排。 [0021] 參閱圖2,所示為本發明命令自動統計方法一實施方式之 流程圖。在本實施方式中,命令自動統計方法係藉由圖1 中之功能模組來實施。 [0022] 在步驟S202,偵測模組122偵測被使用之命令及其使用狀 況。在本實施方式中,命令使用狀況包括命令使用次數 、軟體及運行軟體之操作系統之基本資訊,如軟體名稱 及版本、軟體使用人員資訊、命令使用時間等。在本實 施方式中,偵測模組122先安裝一命令觸發程式,其能自 動偵測到被使用的命令,其中包括被軟體使用者調用之 命令與軟體自身調用之命令兩類。在本實施方式中,命 令自動統計方法僅統計被軟體使用者調用之命令。 [0023] 在步驟S204,判斷模組124判斷被使用之命令之類型。其 097108056 表單編號A0101 第8頁/共21頁 1003331980-0 1.353533 100年09月13日修正替換百 中命令之類型包括採用不同開發工具所開發之命令。在 本實施方式中,命令之類型包括編程者採用開發工具 Ob jectARX與鏈表處理語言等開發工具所開發之電腦輔 助設計軟體之命令。 [0024] 在步騾S206,判斷模組124根據命令之類型判斷其是否屬 於統計範圍,其中統計範圍包括所有需要統計的命令。 在本實施方式中,統計範圍包括所有編程者自行開發且 由軟體使用者調用之命令。 φ [0025] 若判斷模組124斷定命令屬於統計範圍,則在步驟S208, 記錄模組126記錄命令及其使用狀況。在本實施方式中, 記錄模組126將命令及其使用狀況記錄到本地命令自動統 計裝置10中。 [0026] 若判斷模組124斷定命令不屬於統計範圍,則繼續執行步 驟S202,偵測模組122偵測被使用之命令及其使用狀況。 [0027] 在步騾S210,上傳模組14將記錄模組126所記錄之所有 • 命令及其使用狀況上傳到一伺服器20。在本實施方式中 ,為了防止頻繁訪問伺服器20,上傳模組14先判斷一預 設時間是否到來或一預設條件是否成立,並在預設時間 到來或預設條件成立時將命令及其使用狀況上傳到伺服 器20,其中,預設時間可根據統計需要預設為每天的一 個具體時間點、每週的某一天的一個具體時間點,預設 條件亦可根據統計需要預設為每天軟體第一次運行。此 時,伺服器20中包括複數與其連接之命令自動統計裝置 10之上傳模組14所上傳之命令及其使用狀況。在本實施 097108056 表單編號A0101 第9頁/共21頁 1003331980-0 1353533 100年09月13日修正替换頁 方式中,上傳模組14上傳命令及其使用狀況到伺服器20 時,會將伺服器20上原有之同一命令及其使用狀況進行 更新,故,伺服器20上始終保持最新之命令統計資料。 [0028] 在步驟S216,應用模組16將上傳模組14上傳到伺服器20 之命令進行自動排序。在本實施方式中,應用模組16根 據每一命令之使用次數對伺服器20上所有命令進行降序 排列,排在前面之命令即為使用者常用之命令。 [0029] 參閱圖3,為本發明命令自動統計方法一實施例之流程圖List Processor > LISP) ° [0010] The command automatic statistics device 10 includes a statistics module 12, an upload module 14, and an application module 16. [0011] The statistic module 12 is configured to count the complex commands and their usage status, and includes a setting module 120, a detecting module 122, a determining module 124, a recording module 126, and a converting module 128. [0012] The setup module 120 is used to set up a command list that includes commands developed by all programmers. The command list can be in the form of a database, a data table, a configuration file, or a gray condition. [0013] The detection module 122 is configured to detect the used command and its usage status. The command usage status includes basic information about the number of times the command is used, the software, and the operating system of the running software, such as the software name and version, software user information, and command usage time. In this embodiment, the detection module 122 automatically detects the used command by installing a command trigger program. The command trigger program will automatically detect the command being used, including the commands invoked by the software user and the commands invoked by the software itself. In the present embodiment, the command automatic counting means 10 counts only the commands invoked by the software user. 097108056 Form No. A0101 Page 5 / Total 21 Page 1003331980-0 1353533 Correction Replacement Page [0914] on September 13th [0014] The judgment module 1 2 4 is used to determine the type of command detected by the detection module 1 2 2 And judge whether the command belongs to the statistical range according to its type. Among them, the types of commands include commands developed by different development tools, and the statistical scope includes all commands that need to be counted. The judging module 124 can statistically improve the statistical speed by dividing the command into two or more types to use different statistical methods. In this embodiment, the statistical range includes commands that all programmers develop and that are invoked by the software user. In this embodiment, the type of command includes a computer-aided design software developed by a programmer using development tools such as ObjectARX and linked list processing languages. [0015] In an embodiment of the present invention, the determining module 124 determines that the command is a command developed by the development tool ObjectARX, and the determining module 124 is further configured to determine whether the command developed by the development tool Ob j ectARX can match. A list of commands set by the module 120 is set. If the judgment module determines that the command cannot match the command list, the command is discarded and no statistics are performed. Since the commands provided by the software itself are also developed by the development tool ObjectARX, the statistics module 12 discards the commands provided by the software itself by judging whether the "module can match the command list" made by the module 124. [0016] In another embodiment of the present invention, the determining module 124 determines that the command is a command developed by the linked list processing language, and the determining module 124 is further configured to determine that the command developed by the linked list processing language is used. The command invoked by the software user is also a command that is called by the software itself. If the judgment module determines that the command is invoked by the software itself, the command is discarded and no statistics are performed. In the present embodiment, the determination module 124 determines whether it is called by the software user by determining the length of the command. If the length of the command exceeds 097108056 Form No. A0101 Page 6 / Total 21 Page 1003331980-0 1353533 On September 13, 100, according to the preset length of the replacement page, it is concluded that it is called by the software user, if its length is not If it exceeds a preset length value, it is determined that it is called by the software itself. [0017] The conversion module 128 is configured to convert the format of the command invoked by the software user. Since the commands developed by the linked list processing language are often different from the format of the commands developed by the development tool ObjectARX, the command format needs to be converted to facilitate statistics. In the present embodiment, the name of the command developed by the linked list processing language is preceded by a special mark, such as "C:". Therefore, the statistical module 12 uses the conversion module 128 to mark the special mark of such a command. In addition, to facilitate statistics. [0018] The recording module 126 is configured to record the command that the determination module 124 determines to belong to the statistical range and its usage status. In the present embodiment, the recording module 126 records the command and its usage status to the local command automatic statistical device 10, and specifically uses a database, a data table or a configuration file to store the command and its usage status. The command usage status includes the number of times the command is used. In an embodiment of the invention, the recording module 126 is further configured to record a command determined by the determining module 124 to match the command list and its usage status. In another embodiment, the recording module 126 is further configured to record a command according to the format converted by the conversion module 128 and its usage status. [0019] The uploading module 14 is configured to upload the command recorded by the statistical module 12 and its usage status to the server 20. In the present embodiment, in order to prevent frequent access to the server 20, the recording module 126 first stores the command and its usage status in the local command automatic statistical device 10, and when a preset time comes or a preset condition is established The uploading module 14 uploads the command recorded by the statistical module 12 and its usage status to the server 20, wherein the preset time may be a specific time point of the day or a specific 097108056 form number of the day of the week. A0101 Page 7 of 21 1003331980-0 1353533 On September 13th, 100, the shuttle is replacing the time of 100, etc. The preset condition can be the first time of the software every day, etc., which can be set according to statistical needs. In the present embodiment, the server 20 is connected to the plurality of local command statistics devices 10 via the network. At this time, the server 20 includes the commands counted by the plurality of command automatic statistics devices 10 and their usage status. In other embodiments, server 20 may also be one of the local command statistics devices 10. [0020] The application module 16 is configured to sort the commands according to the commands uploaded by the upload module 14 to the server 20 and their usage status. In this embodiment, the application module 16 sorts the commands in descending order according to the number of times the command is used, and the commands listed in the front are the commands commonly used by the user. Thus, the application module 16 can optimize the program based on the usage of the command and conduct educational training arrangements based on the usage of the command. [0021] Referring to FIG. 2, a flow chart of an embodiment of the automatic command statistics method of the present invention is shown. In the present embodiment, the command automatic statistical method is implemented by the function module in FIG. [0022] In step S202, the detecting module 122 detects the used command and its use condition. In this embodiment, the command usage status includes the number of times the command is used, the basic information of the software and the operating system of the running software, such as the software name and version, the software user information, and the command usage time. In this embodiment, the detection module 122 first installs a command trigger program, which can automatically detect the used commands, including the commands invoked by the software user and the commands invoked by the software itself. In the present embodiment, the command automatic statistical method only counts commands invoked by the software user. [0023] At step S204, the determination module 124 determines the type of command to be used. Its 097108056 Form No. A0101 Page 8 of 21 1003331980-0 1.353533 The type of the revised replacement order on September 13, 100 includes the commands developed by different development tools. In the present embodiment, the type of command includes a computer-assisted design software command developed by a programmer using a development tool such as a development tool ObjectARX and a linked list processing language. [0024] In step S206, the determining module 124 determines whether it belongs to the statistical range according to the type of the command, wherein the statistical range includes all commands that need to be counted. In this embodiment, the statistical range includes commands that all programmers develop and that are called by the software user. [0025] If the determining module 124 determines that the command belongs to the statistical range, then in step S208, the recording module 126 records the command and its usage status. In the present embodiment, the recording module 126 records the command and its usage status in the local command automatic statistical device 10. If the determining module 124 determines that the command does not belong to the statistical range, then the process proceeds to step S202, and the detecting module 122 detects the used command and its usage status. [0027] In step S210, the uploading module 14 uploads all the commands recorded by the recording module 126 and their usage status to a server 20. In this embodiment, in order to prevent frequent access to the server 20, the uploading module 14 first determines whether a preset time comes or whether a preset condition is established, and when the preset time comes or the preset condition is established, the command and the command are The usage status is uploaded to the server 20, wherein the preset time may be preset to a specific time point of the day and a specific time point of the day of the week according to the statistical requirement, and the preset condition may also be preset to the daily according to the statistical requirement. The software runs for the first time. At this time, the server 20 includes a command uploaded by the upload module 14 of the command automatic statistical device 10 connected thereto and the usage status thereof. In the implementation of 097108056 Form No. A0101, page 9 / 21 pages, 1003331980-0 1353533, on September 13, the revised replacement page mode, when the upload module 14 uploads the command and its usage status to the server 20, the server will be The same command and its usage status are updated on the 20th, so the latest command statistics are always maintained on the server 20. [0028] In step S216, the application module 16 automatically sorts the commands uploaded by the upload module 14 to the server 20. In this embodiment, the application module 16 sorts all the commands on the server 20 in descending order according to the number of times of each command, and the commands in the front are the commands commonly used by the user. [0029] Referring to FIG. 3, it is a flowchart of an embodiment of an automatic command statistics method according to the present invention.
[0030] 在步驟S300,設置模組120設置命令列表,其包括所有編 程者自行開發之命令。其中命令列表可採用資料庫、資 料表、配置文件、匹配條件等形式。 [0031] 在步驟S304,判斷模組124藉由判斷命令類型確定所偵測 到的命令係採用開發工具ObjectARX所開發之命令。由 於電腦辅助設計軟體自身提供之命令亦多採用開發工具 ◦bjectARX所開發,故,屬於開發工具ObjectARX所開 發之命令包括電腦辅助設計軟體自身提供之命令與編程 者自行開發之命令。在本實施方式中,不需統計軟體自 身提供之命令。 [0032] 在步驟S306,判斷模組124判斷命令是否能匹配命令列表 。其中能匹配命令列表之命令屬於統計範圍,不能匹配 者則不屬於。 若命令不能匹配命令列表,說明該命令不屬於統計範圍 097108056 ,則繼續執行步驟S302,偵測模組122偵測被使用之命令 表單编號A0101 第10頁/共21頁 1003331980-0 [0033] 1353533 100年09月13日俊正替換頁 及其使用狀況。在本實施方式中,當判斷模組124判斷出 採用開發工具〇b jectARX所開發之命令不係編程者自行 開發之命令,而係軟體自行提供之命令時,將其直接丟 棄,不做統計。 [0034] 若命令能匹配命令列表,說明該命令屬於統計範圍,則 在步驟S308,記錄模組126記錄命令及其使用狀況。在本 實施方式中,記錄模組126記錄下所有由編程者採用開發 工具ObjectARX所開發之命令。其中’記錄模組126將命 令及其使用狀況記錄到本地命令自動統計裝置10中。 [0035] 圖3中步驟S302、S310及S312皆與圖2中對應步驟一致, 在此不贅数。 [0036] 參閱圖4,為本發明命令自動統計方法另一實施例之流程 [0037]在步驟S404,判斷模組124藉由判斷命令之類型確定所偵 測到的命令係採用鏈表處理語言所開發之命令。 φ [0038]在步驟S405,判斷模組124判斷命令是否係被軟體使用者 調用之命令。在本實施例中,判斷模組124藉由判斷命令 之長度來判斷其是否係被軟體使用者調用之命令,若命 令之長度超過一預設長度值,則斷定其係被軟體使用者 調用之命令,若其長度未超過該預設長度值,則斷定其 係軟體自身調用之命令。 1003331980-0 [0039]若判斷模組124斷定命令不係軟體使用者調用之命令,而 係軟體自身調用之命令,則繼續執行步驟S402 ’债測模 組122偵測被使用之命令及其使用狀況。在本實施方式中 097108056 表單编號A0101 第11頁/共21買 1353533 [0040] [0041] [0042] [0043] 097108056 100年09月13日 俊正雜$ ’當判斷模組124判斷出採用鏈表處理語言所開發之命令 係被軟體自身調用時,將其直接丟棄,不做統計。 若判斷模組124判斷出命令係軟體使用者調用之命令,則 在步驟S406,轉換模組128轉換命令之格式。由於採用不 同開發工具所開發之命令的格式往往不同,故轉換格式 以便於統計》在本實施例中,採用鏈表處理語言開發與 採用開發工具ObjectARX開發相比,其命令名稱前帶有 —特殊標記,如「C:」。轉換模組128將編程者採用鏈表 處理語言開發之命令名稱之特殊標記去除,以供記錄模 組126記錄。 在步驟S408,記錄模組126根據轉換模組128轉化後的格 式記錄命令及其使用狀況。在本實施方式中,記錄模組 126記錄所有編程者採用鏈表處理語言自行開發且被軟體 使用者調用之命令及其使用狀況。 圖4中步驟S402、S410及S412皆與圖2、圖3中對應步驟 一致,在此不贅敛。 本發明實施方式所提供之命令自動統計裝置丨〇及命令自 動統計方法能自動統計大型應用軟體之命令及其使用狀 況,並將統計結果依命令使用次數排序,從而得出被使 用之命令統計結果。相對於傳統採用手工問卷調查進行 統計之方法,本發明實施方式所提供之命令自動統計裝 置10與命令自動統計方法之統計範圍更廣統計結果更 具代表性。藉由本發明所得出之統計結果,軟體使用者 可迅速提昇_使用麟度’編程者亦可更快更直接地 表單編號A0101 笫12頁/共21頁 1003331980-0 1.353533 100年09月13日核正替換頁 了解其所開發之命令之使用狀況,並可據此優化軟體介 面,增強軟體易用性,使其更貼合軟體使用者之需求。 另外,藉由將命令分類後採用不同的方法來統計,能有 效提昇統計速率,防止統計所耗系統資源過大而給使用 者使用軟體所帶來的不便。 [0044] 綜上所述,本發明符合發明專利要件,爰依法提出專利 申請。惟,以上所述者僅為本發明之較佳實施例,舉凡 熟悉本案技藝之人士,在爰依本案發明精神所作之等效 修飾或變化,皆應包含於以下之申請專利範圍内。 【圖式簡單說明】 [0045] 圖1為本發明命令自動統計裝置一實施方式之結構圖。 [0046] 圖2為本發明命令自動統計方法一實施方式之流程圖。 [0047] 圖3為本發明命令自動統計方法一具體實施例之流程圖。 [0048] 圖4為本發明命令自動統計方法另一具體實施例之流程圖 • 【主要元件符號說明】 [0049] 命令自動統計裝置 10 [0050] 統計模組 12 [0051] 設置模組 120 [0052] 偵測模組 097108056 表單編號A0101 第13頁/共21頁 1003331980-0 1353533 100年09月13日修正替换頁 122 [0053] 判斷模組 124 [0054] 記錄模組 126 [0055] 轉換模組 128[0030] At step S300, the setting module 120 sets a command list including commands developed by all programmers themselves. The command list can be in the form of a database, a data table, a configuration file, and a matching condition. [0031] In step S304, the determining module 124 determines that the detected command is a command developed by the development tool ObjectARX by determining the command type. Since the commands provided by the computer-aided design software itself are also developed by the development tool jectbjectARX, the commands developed by the development tool ObjectARX include the commands provided by the computer-aided design software itself and the commands developed by the programmer. In the present embodiment, it is not necessary to count the commands provided by the software itself. [0032] In step S306, the determination module 124 determines whether the command can match the command list. The command that matches the command list belongs to the statistical range, and the one that does not match does not belong. If the command does not match the command list, indicating that the command does not belong to the statistical range 097108056, the process proceeds to step S302, and the detection module 122 detects the used command form number A0101. Page 10/21 pages 1003331980-0 [0033] 1353533 September 13th, 100th, the replacement page and its use. In the present embodiment, when the judging module 124 judges that the command developed by the development tool 〇b ARCHARX is not a command developed by the programmer, and is a command provided by the software itself, it is directly discarded and not counted. [0034] If the command can match the command list, indicating that the command belongs to the statistical range, then in step S308, the recording module 126 records the command and its usage status. In the present embodiment, the recording module 126 records all commands developed by the programmer using the development tool ObjectARX. The 'recording module 126 records the command and its usage status in the local command automatic statistical device 10. [0035] Steps S302, S310, and S312 in FIG. 3 are all consistent with the corresponding steps in FIG. 2, and are not counted here. [0036] Referring to FIG. 4, a flow of another embodiment of the automatic command counting method of the present invention is performed. [0037] In step S404, the determining module 124 determines that the detected command is a linked list processing language by determining the type of the command. The command developed. φ [0038] In step S405, the determination module 124 determines whether the command is a command invoked by the software user. In this embodiment, the determining module 124 determines whether the command is invoked by the software user by determining the length of the command. If the length of the command exceeds a preset length, it is determined that the command is called by the software user. The command, if its length does not exceed the preset length value, determines the command invoked by the software itself. 1003331980-0 [0039] If the determining module 124 determines that the command is not a command invoked by the software user, but is a command invoked by the software itself, proceeding to step S402, the debt testing module 122 detects the used command and its use. situation. In the present embodiment, 097108056 Form No. A0101 Page 11 / Total 21 Buy 1353353 [0040] [0043] [0043] 097108056 100 September 2009 Jun Jun Miscellaneous $ 'When Judging Module 124 judges the use of the chain When the command developed by the table processing language is called by the software itself, it is directly discarded and not counted. If the determining module 124 determines that the command is a command invoked by the software user, the conversion module 128 converts the format of the command in step S406. Since the format of commands developed by different development tools is often different, the format is converted to facilitate statistics. In this embodiment, the development of the linked list processing language is compared with the development of the ObjectARX development tool. Mark, such as "C:". The conversion module 128 removes the special mark of the command name developed by the programmer using the linked list processing language for recording by the record module 126. In step S408, the recording module 126 records the command according to the conversion of the conversion module 128 and its usage status. In the present embodiment, the recording module 126 records all commands that the programmer has developed in the linked list processing language and are called by the software user and their usage status. Steps S402, S410, and S412 in Fig. 4 are all consistent with the corresponding steps in Figs. 2 and 3, and are not emphasized here. The command automatic statistical device and the command automatic statistical method provided by the embodiments of the present invention can automatically count the commands of the large application software and their usage status, and sort the statistical results according to the number of times the command is used, thereby obtaining the command statistics of the used commands. . Compared with the traditional method of statistical analysis using manual questionnaires, the statistical statistical results of the command automatic statistical device 10 and the command automatic statistical method provided by the embodiments of the present invention are more representative. With the statistical results obtained by the present invention, the software user can quickly improve the _ use of the degree 'programmer can also be faster and more direct form number A0101 笫 12 pages / a total of 21 pages 1003331980-0 1.353533 100 September 13 nuclear The replacement page is used to understand the usage status of the commands it develops, and the software interface can be optimized accordingly to enhance the ease of use of the software and make it more suitable for the needs of software users. In addition, by categorizing the commands and using different methods to count, the statistical rate can be effectively improved to prevent the inconvenience caused by the use of software by the user. [0044] In summary, the present invention complies with the requirements of the invention patent, and submits a patent application according to law. The above description is only the preferred embodiment of the present invention, and equivalent modifications or variations made by those skilled in the art will be included in the following claims. BRIEF DESCRIPTION OF THE DRAWINGS [0045] FIG. 1 is a structural diagram of an embodiment of an automatic command counting apparatus according to the present invention. 2 is a flow chart of an embodiment of an automatic command statistics method according to the present invention. 3 is a flow chart of a specific embodiment of a method for automatically counting statistics according to the present invention. 4 is a flow chart of another embodiment of the automatic command counting method according to the present invention. [Main component symbol description] [0049] Command automatic statistics device 10 [0050] Statistics module 12 [0051] Setting module 120 [ 0052] Detection Module 097108056 Form No. A0101 Page 13 / Total 21 Page 1003331980-0 1353533 Correction Replacement Page 122 of September 13, 100 [0053] Judgment Module 124 [0054] Recording Module 126 [0055] Conversion Mode Group 128
[0056] 上傳模組 14 [0057] 應用模組 16 [0058] 伺服器 20[0056] Upload Module 14 [0057] Application Module 16 [0058] Server 20
097108056 表單編號A0101 第14頁/共21頁 1003331980-0097108056 Form No. A0101 Page 14 of 21 1003331980-0