国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)及其方法

      文檔序號:6584023閱讀:231來源:國知局
      專利名稱:依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)及其方法
      技術(shù)領(lǐng)域
      一種數(shù)據(jù)存取系統(tǒng)及其方法,特別是指一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系 統(tǒng)及其方法。
      背景技術(shù)
      注冊表(registry)是某些作業(yè)系統(tǒng)中的重要數(shù)據(jù)庫,其中儲存系統(tǒng)和應(yīng)用程序 的系統(tǒng)參數(shù)、環(huán)境數(shù)據(jù)或預(yù)設(shè)值等注冊數(shù)據(jù)。注冊表由鍵(key)、子鍵以及鍵值構(gòu)成。其中, 一個鍵可以視為一個文件夾,而子鍵就是文件夾中的子文件夾,子鍵同樣可以視為一個鍵, 也就說子鍵之下還可以有子鍵;一個鍵值則是一個鍵的當(dāng)前定義,至少由名稱以及相對應(yīng) 的數(shù)據(jù)組成。一個鍵可以有一個或多個鍵值,每個鍵值的名稱各不相同。若軟件所安裝的作業(yè)系統(tǒng)提供注冊表讓軟件使用,則通常也會提供應(yīng)用程序界面 (Application Programming Interface, API)讓軟件存取注冊表,軟件可以通過應(yīng)用程序 界面在登入檔中建立、修改、刪除各個鍵以及相對應(yīng)的鍵值,以在注冊表中記錄所需的注冊 數(shù)據(jù),等待軟件執(zhí)行時使用。事實上,軟件并不一定只有安裝版本,提供相同功能的一個軟件將可能會有不同 的版本,例如可以隨插即用的隨身碟版本等。由于隨身碟版本提供隨插即用的功能,因此隨 身碟版本并不適合使用作業(yè)系統(tǒng)所提供的注冊表來記錄所需的注冊數(shù)據(jù),而會在U盤上建 立一個注冊檔來記錄所需的注冊數(shù)據(jù)。然而,在開發(fā)者完成其中一個版本的開發(fā)之后,要開發(fā)另一個版本時,往往因為安 裝版本以及隨身碟版本可以存取的儲存資源(resource)不同,因此需要在所有的程序中 改寫存取注冊數(shù)據(jù)的部分,例如需要將所有通過應(yīng)用程序界面存取注冊表的程序碼改寫為 檔案讀寫。另外,也因為作業(yè)系統(tǒng)會在隨身碟連接之后才賦予盤符,因此隨身碟版本中對于 檔案的路徑只能使用相對路徑,無法像安裝版本使用絕對路徑,因此,再另外一個版本的開 發(fā)時,也需要修改開啟檔案的路徑的部分程序碼。綜上所述,可知先前技術(shù)中長期以來一直存在同一軟件使用不同儲存資源的版本 的開發(fā)往往需要修改大量程序碼的問題,因此有必要提出改進(jìn)的技術(shù)手段,來解決此一問 題。

      發(fā)明內(nèi)容
      有鑒于先前技術(shù)存在為同一軟件開發(fā)不同儲存資源的版本時需要修改大量程序 碼的問題,本發(fā)明特提供一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)及其方法,其中本發(fā)明所提供的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),至少包含封裝程序,與 儲存資源對應(yīng),其中更包含注冊存取界面,至少包含注冊路徑參數(shù);目錄取得界面;目錄 回應(yīng)模塊,用以取得目標(biāo)目錄,并通過目錄取得界面?zhèn)骰啬繕?biāo)目錄;注冊存取模塊,用以依 據(jù)注冊路徑參數(shù)于儲存資源所包含的儲存空間中存取注冊數(shù)據(jù);核心程序,用以載入封裝 程序,并于設(shè)定注冊路徑參數(shù)后,調(diào)用注冊存取界面存取注冊數(shù)據(jù),及調(diào)用目錄取得界面取得目標(biāo)目錄。本發(fā)明所提供的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,其步驟至少包括提供 與儲存資源對應(yīng)的封裝程序,封裝程序至少包含注冊存取界面及目錄取得界面;核心程序 載入封裝程序;當(dāng)核心程序設(shè)定注冊存取界面所包含的注冊路徑參數(shù),并調(diào)用注冊存取界 面后,封裝程序依據(jù)注冊路徑參數(shù)于儲存資源所包含的儲存空間中存取注冊數(shù)據(jù);當(dāng)核心 程序調(diào)用目錄取得界面后,封裝程序取得目標(biāo)目錄,并通過目錄取得界面回應(yīng)目標(biāo)目錄至 該核心程序。本發(fā)明所提供的系統(tǒng)與方法如上,與先前技術(shù)之間的差異在于本發(fā)明通過將軟件 分為核心程序以及與儲存資源對應(yīng)的封裝程序,核心程序可以調(diào)用封裝程序的注冊存取界 面,使得封裝程序存取注冊數(shù)據(jù),核心程序也可以調(diào)用封裝程序的目錄取得界面,使封裝程 序回應(yīng)目標(biāo)目錄,藉以解決先前技術(shù)所存在的問題,并可以達(dá)成減少開發(fā)不同版本的軟件 的復(fù)雜度的技術(shù)功效。


      圖1為本發(fā)明所提之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)架構(gòu)圖。圖2為本發(fā)明實施例所提的注冊檔示意圖。圖3A為本發(fā)明所提之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法流程圖。圖;3B為本發(fā)明所提之另一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法流程圖。主要元件符號說明120核心程序130封裝程序131注冊存取界面132目錄取得界面135目錄回應(yīng)模塊136注冊存取模塊139路徑轉(zhuǎn)換模塊300注冊檔410儲存資源
      具體實施例方式以下將配合圖式及實施例來詳細(xì)說明本發(fā)明之特征與實施方式,內(nèi)容足以使任何 熟習(xí)相關(guān)技藝者能夠輕易地充分理解本發(fā)明解決技術(shù)問題所應(yīng)用的技術(shù)手段并據(jù)以實施, 藉此實現(xiàn)本發(fā)明可達(dá)成的功效。本發(fā)明中是將軟件分為核心程序以及由核心程序載入的封裝程序,核心程序是不 會隨著儲存資源改變而運(yùn)行程序的程序,而封裝程序則是會依據(jù)儲存資源不同而有不同運(yùn) 行程序的程序,因此,同一個軟件在不同儲存資源的版本中,核心程序都是相同的,而封裝 程序會與各個儲存資源相對應(yīng)。本發(fā)明所提之儲存資源,是指軟件執(zhí)行時可以使用的儲存媒體,當(dāng)使用者將軟件 安裝在作業(yè)系統(tǒng)中時,軟件可以使用作業(yè)系統(tǒng)所提供的記錄在存儲器中的注冊表,儲存軟件的系統(tǒng)參數(shù)、環(huán)境數(shù)據(jù)或預(yù)設(shè)值等軟件所需的數(shù)據(jù),因此,存儲器是本發(fā)明所提之儲存資 源,而若,軟件無法使用存儲器儲存所需的數(shù)據(jù),而是需要在磁盤的特定目錄中以自行建立 的注冊檔儲存軟件的系統(tǒng)參數(shù)、環(huán)境數(shù)據(jù)或預(yù)設(shè)值等所需的數(shù)據(jù)時,磁盤便是本發(fā)明所提 之另一種儲存資源。儲存資源并不一定只為存儲器、硬盤、U盤等單一的儲存媒體,也可以 為多個儲存媒體的組合,例如存儲器以及硬盤的組合等。儲存資源中包含一個或多個儲存空間,本發(fā)明所提之儲存空間系用來儲存軟件及 /或軟件所需的數(shù)據(jù),儲存空間可以為儲存資源中連續(xù)或不連續(xù)的區(qū)塊,一般而言,儲存空 間會以檔案的形式呈現(xiàn),但本發(fā)明并不以此為限。為了讓軟件開發(fā)者在開發(fā)不同儲存資源的軟件版本時,不需要修改核心程序,因 此在不同儲存資源的各個版本中,開發(fā)者需要給予與各個儲存資源相對應(yīng)的各個封裝程序 相同的檔案名稱,如此,主程序便不需要改變?nèi)魏蔚某绦颍恍枰趫?zhí)行封裝程序時,載入 預(yù)定的檔案名稱的封裝程序即可以讓軟件使用正確的儲存資源進(jìn)行運(yùn)作。此外,與各個儲 存資源對應(yīng)的封裝程序也會以相同的界面名稱來提供相同的功能,使得核心程序只需要調(diào) 用(call)封裝程序中的預(yù)定名稱的函式便可以產(chǎn)生相同的執(zhí)行結(jié)果,而不需要進(jìn)行任何 修改,也不需要判斷儲存資源為何。如此,當(dāng)包含本發(fā)明的軟件需要修改為使用其他儲存資 源的版本時,開發(fā)者只需要開發(fā)與新儲存資源對應(yīng)的封裝程序,而不需要更改核心程序。以下先以「圖1」本發(fā)明所提之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)架構(gòu)圖來 說明本發(fā)明的系統(tǒng)運(yùn)作。如「圖1」所示,本發(fā)明的系統(tǒng)主要含有核心程序120以及封裝程 序130。其中,封裝程序130更包含注冊存取界面131、目錄取得界面132、目錄回應(yīng)模塊135 以及注冊存取模塊136。核心程序120為包含本發(fā)明的軟件的主要部分,負(fù)責(zé)在需要時載入封裝程序130, 以通過封裝程序130完成包含本發(fā)明的軟件提供給使用者的功能。在本發(fā)明中,核心程序 120需要通過封裝程序130完成的功能至少包含存取注冊數(shù)據(jù)以及取得目標(biāo)目錄,但本發(fā) 明并不以此為限。核心程序120所欲存取的注冊數(shù)據(jù)通常為軟件的系統(tǒng)參數(shù)值、環(huán)境數(shù)據(jù)值或使用 者設(shè)定值等軟件需要使用的數(shù)據(jù),但本發(fā)明所提的注冊數(shù)據(jù)并不以此為限。在本發(fā)明中, 每個注冊數(shù)據(jù)會與一個已知路徑相對應(yīng),但一個已知路徑可能包含多筆注冊數(shù)據(jù)。注冊 數(shù)據(jù)會依據(jù)已知路徑被儲存在儲存資源410中。其中,已知路徑與習(xí)知之檔案路徑相似, 都會以目錄的方式表現(xiàn),例如「!"ranslatiorAi 13」或「HKEY_LOCAL_MACHINE\SOFTWARE\ Translation\2. 8」等,但本發(fā)明所提之已知路徑并不以此為限。核心程序120欲取得之目標(biāo)目錄是核心程序120欲存取的目標(biāo)檔案所在的目錄, 通常核心程序120欲存取的目標(biāo)檔案會被存放于與封裝程序130對應(yīng)的儲存資源中。一般 而言,當(dāng)儲存資源410為U盤時,軟件通常只會使用U盤的儲存空間,而不會使用非用U盤 的儲存空間,也就是說,核心程序120欲存取的目標(biāo)檔案也會儲存在U盤中,同時,核心程序 120、封裝程序130也會被儲存在U盤中,而記錄注冊數(shù)據(jù)的儲存空間通常為U盤中,存放于 使用者可讀寫的儲存區(qū)域的注冊檔;另外,當(dāng)儲存資源410為存儲器與硬盤的組合時,核心 程序120、封裝程序130以及核心程序120欲存取的目標(biāo)檔案都會儲存在硬盤中,而記錄注 冊數(shù)據(jù)的儲存空間通常為作業(yè)系統(tǒng)所提供的注冊表,注冊表系儲存在存儲器中。封裝程序130與儲存資源410對應(yīng),不同的儲存資源將有不同的封裝程序130,但不同的封裝程序130會以相同的函式名稱提供核心程序120相同的功能以及相同的執(zhí)行結(jié) 果。其中,值得一提的是,封裝程序130通常為動態(tài)鏈接庫(Dynamic Link Library, DLL) 的形式,如此,核心程序120將可以在需要使用封裝程序130所提供的功能時,動態(tài)連接封 裝程序130。但本發(fā)明所提之封裝程序130并不以動態(tài)鏈接庫為限。注冊存取界面131是為一個提供核心程序120調(diào)用的界面函式,因此,注冊存取界 面131可以包含一個以上的參數(shù),注冊存取界面131所包含的參數(shù)中,更包含一個注冊路徑 參數(shù)。注冊存取界面131具有一個界面名稱,在不同的封裝程序130中,都會有相同界 面名稱的注冊存取界面131,核心程序120在需要存取注冊數(shù)據(jù)時,會將欲存取的注冊數(shù) 據(jù)的已知路徑設(shè)定為注冊存取界面131的注冊路徑參數(shù),并已注冊存取界面131的界面 名稱調(diào)用注冊存取界面131。其中,注冊數(shù)據(jù)的已知路徑是開發(fā)者定義的相對路徑,例如 rTranslation\4. 13」等,但本發(fā)明并不以此為限。目錄取得界面132與注冊存取界面131相似,同樣為一個提供核心程序120調(diào)用 的界面函式,目錄取得界面132包含一個界面名稱,但并不一定要包含參數(shù)。核心程序120 在需要存取目標(biāo)檔案時,會以目錄取得界面132的界面名稱調(diào)用目錄取得界面132,以通過 目錄取得界面132取得存放目標(biāo)檔案的目標(biāo)目錄。目錄回應(yīng)模塊135負(fù)責(zé)依據(jù)儲存資源410取得目標(biāo)目錄,并通過目錄取得界面132 回應(yīng)取得之目標(biāo)目錄至核心程序120。目錄回應(yīng)模塊135所回應(yīng)的目標(biāo)目錄系包含盤符的 絕對路徑,一般而言,目標(biāo)目錄為存放核心程序120以及封裝程序130的目錄,但本發(fā)明并 不以此為限,也可以為系統(tǒng)的預(yù)設(shè)目錄或是使用者所設(shè)定之存放數(shù)據(jù)的目錄等。其中,特別 值得一提的是,當(dāng)儲存資源410為U盤時,由于同一作業(yè)系統(tǒng)在不同時間分配給U盤的盤符 并不一定相同,故目錄回應(yīng)模塊135所回應(yīng)的目標(biāo)目錄的盤符可能會有變化。注冊存取模塊136負(fù)責(zé)依據(jù)注冊存取界面131的注冊路徑參數(shù)存取注冊數(shù)據(jù),由 于核心程序120會設(shè)定注冊路徑參數(shù)為已知路徑,故注冊存取模塊136會至儲存資源410 所包含的儲存空間中存取與已知路徑對應(yīng)的注冊數(shù)據(jù)。例如,當(dāng)儲存資源410為U盤時,儲 存空間為U盤中使用者可自由讀寫的儲存區(qū)域中的注冊檔300,如「圖2」所示。若已知路 徑為「Translation^. 13」,則注冊存取模塊136會在注冊檔300之未縮排的字串中先搜尋 字串「Translation」,并在搜尋到字串Γ Translation J后,在字串Γ Translation J所包含的 子字串中搜尋「4. 13」的字串,也就是搜尋對字串「Translation」縮排的字串,如「4. 13」、 「User」等,并在搜尋到字串「4. 13」后,讀出相對應(yīng)的注冊數(shù)據(jù),被讀出的注冊數(shù)據(jù)系對 「4. 13」縮排后的數(shù)據(jù),也就是數(shù)據(jù)名稱「key」、相對應(yīng)的數(shù)據(jù)內(nèi)容「InvTest」以及數(shù)據(jù)名稱 為「path」的數(shù)據(jù)等,但本發(fā)明并不以此為限;而當(dāng)儲存資源410為存儲器時,儲存空間為作 業(yè)系統(tǒng)所提供的注冊表,若已知路徑為「Translation^. 13」,則注冊存取模塊136會先將 預(yù)定路徑加入已知路徑之前,例如將預(yù)定路徑「HKEY_L0CAL_MACHINE\S0FTWARE」加入已知 路徑「Translation^. 13」后,注冊存取模塊136會通過作業(yè)系統(tǒng)所提供的應(yīng)用程序界面, 由注冊表中讀取與「HKEY_L0CAL_MACHINE\S0FTWARE\Translation\4. 13」對應(yīng)的注冊數(shù)據(jù)。其中,特別值得一提的是,當(dāng)儲存資源410為U盤時,儲存空間為U盤中使用者可 自由讀寫的儲存區(qū)域中的注冊檔,由于注冊檔會存放于目標(biāo)目錄中(但本發(fā)明并不以此為 限),因此,當(dāng)注冊存取模塊136需要存取注冊檔時,還需要先通過目錄回應(yīng)模塊135取得目標(biāo)目錄,如此,注冊存取模塊136才能夠存取存放在目標(biāo)目錄中的注冊檔。注冊存取模塊136在完成注冊數(shù)據(jù)的讀取后,會通過注冊存取界面131將讀出的 注冊數(shù)據(jù)傳回核心程序120,事實上,注冊存取模塊136也可以在完成注冊數(shù)據(jù)的寫入后, 傳回寫入結(jié)果給核心程序120。注冊存取模塊136寫入結(jié)果通常為表示成功的「1」、表示失 敗的「0」,但本發(fā)明所提之寫入結(jié)果并不以此為限。經(jīng)由上述,通過注冊存取界面131、目錄取得界面132、目錄回應(yīng)模塊135以及注冊 存取模塊136,封裝程序130將可以依據(jù)不同的儲存資源410提供核心程序120相同的功能
      與結(jié)果。另外,當(dāng)儲存資源410為U盤時,由于作業(yè)系統(tǒng)分配給U盤的盤符并不固定,因此 如軟件安裝路徑等注冊數(shù)據(jù)會以相對目錄的方式儲存。在此情況下,若核心程序120通過 注冊存取界面131存取的注冊數(shù)據(jù)為軟件安裝路徑,則核心程序120所取得的注冊數(shù)據(jù)僅 為相對目錄,核心程序120仍然無法得的軟件確實的安裝路徑,是故,封裝程序130需要包 含路徑轉(zhuǎn)換模塊139。路徑轉(zhuǎn)換模塊139負(fù)責(zé)在注冊存取模塊136所讀出的注冊數(shù)據(jù)為相對路徑時,通 過目錄回應(yīng)模塊135取得目標(biāo)目錄,并將相對路徑轉(zhuǎn)換為絕對路徑。例如,路徑轉(zhuǎn)換模塊 139可以將目標(biāo)目錄中所包含的盤符,加入相對路徑之前,以將注冊存取模塊136所讀出 之相對路徑被轉(zhuǎn)換為絕對路徑,使得注冊存取模塊136可以將絕對路徑通過注冊存取界面 131傳回核心程序120。接著以第一實施例來解說本發(fā)明的運(yùn)作系統(tǒng)與方法,并請參照「圖3A」本發(fā)明所 提之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法流程圖。在本實施例是以翻譯軟件為例,但本 發(fā)明并不以此為限;其中,假設(shè)儲存資源410為U盤,但本發(fā)明亦不以此為限。若翻譯軟件的開發(fā)者將翻譯軟件儲存在U盤中,使用者可以在連接U盤與電腦后 使用翻譯軟件,其中,儲存在U盤中的翻譯軟件包含核心程序120以及對應(yīng)U盤的封裝程序 130,以提供核心程序120載入(步驟201)。假設(shè)在本實施例中,封裝程序130為動態(tài)鏈接庫,則核心程序120可以在需要存取 注冊數(shù)據(jù)或需要取得目標(biāo)目錄時,才載入封裝程序130 (步驟210)。但若封裝程序130為慣 常的函式庫,則核心程序120會在開始執(zhí)行時便載入封裝程序130 (步驟210)。當(dāng)使用者希望使用翻譯軟件中查找自行建立的字詞庫中的數(shù)據(jù)時,核心程序120 會需要通過封裝程序130取得翻譯軟件存放檔案的目標(biāo)目錄,以至目標(biāo)目錄中讀取使用者 自行建立的字詞庫內(nèi)的數(shù)據(jù)。假設(shè)翻譯軟件會將使用者自行建立的字詞庫的檔案名稱定義 為「herData.wdb」,則核心程序120便是需要至目標(biāo)目錄中讀取陽serData. wdb」的數(shù)據(jù)。在核心程序120載入封裝程序130(步驟210)后,核心程序會調(diào)用封裝程序130 的目錄取得界面132(步驟230),目錄取得界面132在被調(diào)用后,會通過封裝程序130的目 錄回應(yīng)模塊135取得翻譯軟件在U盤上存放檔案的目標(biāo)目錄(步驟251a)。在本實施例中, 由于儲存資源410為U盤,所以U盤中的翻澤軟件并不會使用電腦上的儲存媒體,故翻譯軟 件會將使用者自行建立的字詞庫儲存在U盤中,可以由使用者任意讀寫的儲存區(qū)域上,例 如,根目錄底下的「Translation」目錄,如此,目錄回應(yīng)模塊135便可以取得目標(biāo)目錄U盤 中根目錄底下的「Translation」目錄,使得目錄取得界面132可以傳回「VTranslatiorA」 的目標(biāo)目錄給核心程序120(步驟25 。核心程序120在目錄取得界面132回傳目標(biāo)目錄r\Translation\J 后,便可以讀取 U 盤上之「\Translation\J 目錄下的「UserData. wdbj 檔, 藉以讀出「herDataidb」檔中的數(shù)據(jù)給使用者。在第一實施例中,若儲存資源410不為U盤,而為電腦中的硬盤,此表示翻譯軟件 是被安裝于電腦的作業(yè)系統(tǒng)中。如此,核心程序120所載入的封裝程序130便與上述不同, 開發(fā)者會提供與電腦硬盤對應(yīng)的封裝程序130,此封裝程序130的檔案名稱與上述封裝程 序130相同,提供的界面以及功能也都與上述封裝程序130相同,但運(yùn)作方式不同。在核心程序120載入封裝程序130(步驟210)后,會調(diào)用封裝程序130的目錄取 得界面132(步驟230)。目錄取得界面132會喚起目錄回應(yīng)模塊135,目錄回應(yīng)模塊135會 偵測封裝程序130所執(zhí)行的目錄,也就是封裝程序130被存放在電腦硬盤中的目錄,目錄回 應(yīng)模塊135所偵測到的目錄即為目標(biāo)目錄(步驟251a)。之后,目錄取得界面132會將通過 目錄回應(yīng)模塊135所取得的目標(biāo)目錄傳回給核心程序120(步驟250),如此,核心程序120 便可以存取存放在目標(biāo)目錄中的「UserData. wdbj檔。以下再以第二實施例來解說本發(fā)明的運(yùn)作系統(tǒng)與方法,并請參照「圖IBB」本發(fā)明 所提之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法流程圖。本實施例同樣以翻譯軟件為例,但 本發(fā)明并不以此為限。開發(fā)者可以提供U盤版本、安裝版本等各種版本的翻譯軟件,每個版本的翻譯軟 件中都包含核心程序120以及封裝程序130 (步驟201)。其中,每個版本中的封裝程序130 會與其所使用之儲存資源對應(yīng),例如U盤版本之翻譯軟件中的封裝程序130與U盤對應(yīng)、安 裝版本之翻譯軟件中的封裝程序130與電腦之存儲器與硬盤對應(yīng)等。在使用者連接電腦與安裝有翻譯軟件的U盤后,電腦會配給U盤一個盤符,例如為 「I」,使用者可以執(zhí)行存放于U盤中的核心程序120。同樣的,使用者也可以在電腦上安裝翻 譯軟件后,執(zhí)行儲存于硬盤中的核心程序120。當(dāng)使用者需要查找字詞「word」的解釋時,核心程序120會至存放于翻譯軟件之安 裝目錄的字詞庫中讀取出字詞「word」的解釋,因此,核心程序120需要取得翻譯軟件的安 裝目錄。若在本實施例中,翻譯軟件的安裝目錄系在儲存資源410所包含的儲存空間中, 以注冊數(shù)據(jù)的方式被記錄(但本發(fā)明并不以此為限),如此,核心程序120需要至儲存資源 410所包含的儲存空間中讀取記錄安裝目錄的注冊數(shù)據(jù),因此,核心程序120會通過已載入 之封裝程序130(步驟210)存取注冊數(shù)據(jù)。假設(shè)記錄安裝目錄的注冊數(shù)據(jù)的已知路徑為 「Translation^. 13\path」,但本發(fā)明并不以此為限。首先,核心程序120會設(shè)定封裝程序130的注冊存取界面131的注冊存取參數(shù)為 已知路徑「Translation^. 13\path」,并調(diào)用注冊存取界面131(步驟220)。在封裝程序130的注冊存取界面131被核心程序120調(diào)用后,注冊存取界面131 會喚起封裝程序130的注冊存取模塊136,注冊存取模塊136會依據(jù)注冊存取界面131的注 冊存取參數(shù),在儲存資源410所包含的儲存空間中存取注冊數(shù)據(jù)(步驟沈0)。若翻譯軟件為安裝版本,表示儲存資源410為存儲器與硬盤,則儲存資源410所 包含的儲存空間是為執(zhí)行于電腦中的作業(yè)系統(tǒng)所提供的注冊表,因此,注冊存取模塊136 會先在注冊存取界面131所包含的注冊存取參數(shù)前加入翻譯軟件的預(yù)定字串,例如「HKEY_ L0CAL_MACHINE\S0FTWARE」(但本發(fā)明不以此為限),使注冊存取參數(shù)變?yōu)轭A(yù)定字串與已 知路徑的組合,之后,注冊存取模塊136調(diào)用執(zhí)行于電腦中的作業(yè)系統(tǒng)所提供的應(yīng)用程
      9序界面存取注冊表,藉以從注冊表中讀出組合后的注冊存取參數(shù)「HKEY_LOCAL_MACHINE\ S0FTWARE\Translation\4. 13\pathJ的數(shù)據(jù),此數(shù)據(jù)即為翻譯軟件的安裝路徑,假設(shè)為 「C:\software\translation\」,但本發(fā)明并不以此為限。在封裝程序130的注冊存取模塊136依據(jù)注冊存取參數(shù),在電腦的存儲器(儲 存資源410)所包含的注冊表(儲存空間)中讀取出翻譯軟件的安裝路徑「C:\SOftware\ translatiorA」(注冊數(shù)據(jù))后,封裝程序的注冊存取界面131會將翻譯軟件的安裝路徑 回傳給核心程序120 (步驟觀0),如此,核心程序120便可以開啟翻譯軟件的安裝路徑 「C:\software\translation\」中的字詞庫,并由字詞庫中讀出字詞「word」的解釋,并顯示 給使用者觀看。另外,若翻譯軟件為U盤的版本,表示儲存資源410為U盤,則儲存資源410所包 含的儲存空間系為儲存于U盤中的注冊檔,假設(shè)注冊檔的檔案名稱為「reg. dat」。由于注冊檔存在U盤中,封裝程序130的注冊存取模塊136無法得知存放注冊檔 的目標(biāo)目錄,因此,注冊存取模塊136需要先通過封裝程序130的目錄回應(yīng)模塊135取得存 放注冊檔的目標(biāo)目錄(步驟251b),也就是說,注冊存取模塊136會喚起目錄回應(yīng)模塊135, 目錄回應(yīng)模塊135將會回應(yīng)翻譯軟件存放各種檔案的目標(biāo)目錄給注冊存取模塊136,例如 目錄回應(yīng)模塊135回應(yīng)目標(biāo)目錄「\Translation\J,則注冊存取模塊136會至U盤之根目錄 底下之「Translation」目錄中讀取注冊檔「reg. dat」。在封裝程序130的目錄回應(yīng)模塊135取得存放注冊檔的目標(biāo)目錄(步驟251b)后, 封裝程序130的注冊存取模塊136會依據(jù)注冊存取界面131所包含的注冊存取參數(shù),至注 冊檔「reg. dat J中讀出翻譯軟件的注冊數(shù)據(jù)(步驟沈0)。假設(shè)在本實施例中,注冊存取模 塊136至注冊檔所讀出的注冊數(shù)據(jù)為安裝目錄「TranslatiorA」。若封裝程序130中包含路徑轉(zhuǎn)換模塊139,則路徑轉(zhuǎn)換模塊139會判斷被封裝程序 130的注冊存取模塊136所讀出的注冊數(shù)據(jù)是否為相對路徑(步驟271),若否,則路徑轉(zhuǎn)換 模塊139不會對注冊存取模塊136所讀出的注冊數(shù)據(jù)做任何改變,將由封裝程序130的注 冊存取界面131直接回應(yīng)給核心程序120(步驟觀0),若是,則路徑轉(zhuǎn)換模塊139會將注冊 存取模塊136所讀出之相對路徑(注冊數(shù)據(jù))轉(zhuǎn)換為絕對路徑(步驟27 。在本實施例 中,注冊存取模塊136至注冊檔所讀出的注冊數(shù)據(jù)為安裝目錄「TranslatiorA」,由于注冊 存取模塊136所讀出的注冊數(shù)據(jù)中沒有盤符,也不是以表示為根目錄的「\」符號開頭,因此 路徑轉(zhuǎn)換模塊139會判斷注冊存取模塊136所讀出的安裝目錄為相對路徑,故路徑轉(zhuǎn)換模 塊139會在注冊存取模塊136所讀出的注冊數(shù)據(jù)前,加入此時之U盤的盤符「I 」,以及表示 為根目錄的符號「\」,使得注冊存取模塊136所讀出的安裝目錄被路徑轉(zhuǎn)換模塊139轉(zhuǎn)換為 絕對路徑「I:\Translation\J。在封裝程序130的注冊存取模塊136依據(jù)注冊存取參數(shù),由U盤(儲存資源410) 所包含的注冊檔(儲存空間)中讀取出翻譯軟件的安裝路徑「I:\TranslatiorA」(注冊數(shù) 據(jù))后,封裝程序的注冊存取界面131會將翻譯軟件的安裝路徑回傳給核心程序120 (步驟 觀0),如此,核心程序120便可以開啟翻譯軟件之安裝路徑「I:\TranslatiorA」中的字詞 庫,并由字詞庫中讀出字詞「word」的解釋,并顯示給使用者觀看。綜上所述,可知本發(fā)明與先前技術(shù)之間的差異在于具有將軟件分為核心程序以及 與儲存資源對應(yīng)的封裝程序,使核心程序通過封裝程序存取注冊數(shù)據(jù),以及通過封裝程序取得目標(biāo)目錄的技術(shù)手段,借由此一技術(shù)手段可以解決先前技術(shù)所存在為同一軟件開發(fā)不 同儲存資源的版本時需要修改大量程序碼的問題,進(jìn)而達(dá)成增加軟件不同版本的開發(fā)效率 的技術(shù)功效。再者,本發(fā)明之依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,可實現(xiàn)于硬體、軟件或硬 體與軟件的組合中,亦可在電腦系統(tǒng)中以集中方式實現(xiàn)或以不同元件散布于若干互連的電 腦系統(tǒng)的分散方式實現(xiàn)。雖然本發(fā)明所提供的實施方式如上,惟所述之內(nèi)容并非用以直接限定本發(fā)明之專 利保護(hù)范圍。任何本發(fā)明所屬技術(shù)領(lǐng)域中具有通常知識者,在不脫離本發(fā)明所提供的精神 和范圍的前提下,對本發(fā)明之實施的形式上及細(xì)節(jié)上作些許之更動潤飾,均屬于本發(fā)明之 專利保護(hù)范圍。本發(fā)明之專利保護(hù)范圍,仍須以所附之申請專利范圍所界定者為準(zhǔn)。
      權(quán)利要求
      1.一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,該方法至少包含下列步驟提供與該儲存資源對應(yīng)的一封裝程序,該封裝程序至少包含一注冊存取界面及一目錄 取得界面;一核心程序載入該封裝程序;當(dāng)該核心程序設(shè)定該注冊存取界面所包含的一注冊路徑參數(shù),并調(diào)用該注冊存取界 面后,該封裝程序依據(jù)該注冊路徑參數(shù)于該儲存資源所包含的一儲存空間中存取一注冊數(shù) 據(jù);及當(dāng)該核心程序調(diào)用該目錄取得界面后,該封裝程序取得一目標(biāo)目錄,并通過該目錄取 得界面回應(yīng)該目標(biāo)目錄至該核心程序。
      2.如權(quán)利要求1所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,其中該封裝程序依據(jù) 該注冊路徑參數(shù)于該儲存資源所包含的該儲存空間中存取該注冊數(shù)據(jù)的步驟是該封裝程 序于該注冊路徑參數(shù)前加入一預(yù)定路徑,并通過應(yīng)用程序界面于一注冊表中存取該注冊數(shù) 據(jù)。
      3.如權(quán)利要求1所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,其中該封裝程序依據(jù) 該注冊路徑參數(shù)于該儲存資源所包含的該儲存空間中存取該注冊數(shù)據(jù)的步驟更包含該封 裝程序依據(jù)該儲存資源取得存放該儲存空間之該目標(biāo)目錄的步驟。
      4.如權(quán)利要求1所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的方法,其中該方法于該封裝 程序依據(jù)該注冊路徑參數(shù)于該儲存資源所包含的該儲存空間中存取該注冊數(shù)據(jù)的步驟后, 更包含該封裝程序判斷該被讀取的注冊數(shù)據(jù)為一相對路徑時,依據(jù)該目標(biāo)目錄將注冊數(shù)據(jù) 由該相對路徑轉(zhuǎn)換為一絕對路徑的步驟。
      5.一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),該系統(tǒng)至少包含一封裝程序,與一儲存資源對應(yīng),其中更包含一注冊存取界面,至少包含一注冊路徑參數(shù);一目錄取得界面;一目錄回應(yīng)模塊,用以取得一目標(biāo)目錄,并通過該目錄取得界面?zhèn)骰卦撃繕?biāo)目錄;及一注冊存取模塊,用以依據(jù)該注冊路徑參數(shù)于該儲存資源所包含的一儲存空間中存取 一注冊數(shù)據(jù);及一核心程序,用以載入該封裝程序,并于設(shè)定該注冊路徑參數(shù)后,調(diào)用該注冊存取界面 存取該注冊數(shù)據(jù),及調(diào)用該目錄取得界面取得該目標(biāo)目錄。
      6.如權(quán)利要求5所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),其中該封裝程序系動 態(tài)鏈接庫。
      7.如權(quán)利要求5所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),其中該儲存空間是一 注冊表,該注冊存取模塊更用以于該注冊存取參數(shù)前加入一預(yù)定路徑,并通過應(yīng)用程序界 面于該注冊表中存取該注冊數(shù)據(jù)。
      8.如權(quán)利要求5所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),其中該儲存空間是一 注冊檔,該注冊存取模塊更用以通過該目錄回應(yīng)模塊取得該目標(biāo)目錄,并至該注冊檔中存 取該注冊數(shù)據(jù),其中,該注冊檔存放于該目標(biāo)目錄中。
      9.如權(quán)利要求5所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),其中該系統(tǒng)更包含一 路徑轉(zhuǎn)換模塊,用以于該被讀出的注冊數(shù)據(jù)為一相對路徑時,通過該目錄回應(yīng)模塊取得該目標(biāo)目錄,并依據(jù)該目標(biāo)目錄轉(zhuǎn)換該相對路徑為一絕對路徑。
      10.如權(quán)利要求5所述的依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng),其中該注冊存取模 塊更用以通過該注冊存取界面回應(yīng)一寫入結(jié)果或該注冊數(shù)據(jù)予該核心程序。
      全文摘要
      一種依據(jù)儲存資源提供相應(yīng)數(shù)據(jù)存取的系統(tǒng)及其方法,其通過提供與儲存資源對應(yīng)的封裝程序,使核心程序通過封裝程序存取注冊數(shù)據(jù),以及通過封裝程序取得目標(biāo)目錄的技術(shù)手段,可以減少為同一軟件開發(fā)不同儲存資源的版本時所需要修改的程序碼,并達(dá)成增加軟件不同版本的開發(fā)效率的技術(shù)功效。
      文檔編號G06F9/44GK102081516SQ200910225540
      公開日2011年6月1日 申請日期2009年11月30日 優(yōu)先權(quán)日2009年11月30日
      發(fā)明者周韜, 邱全成 申請人:英業(yè)達(dá)股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1