關於拼字檢查 API
對於全球的使用者而言,文字輸入是現代化運算體驗的一部分,用於部落格、批註、推文、立即訊息或任何其他類型的文字輸入。 在Windows 8中,會內建拼字檢查來編輯控制項。
開發人員可以使用其應用程式中的拼字檢查 API 來取用可用的拼字檢查服務。 開發人員也可以建立成為提供者的拼字檢查工具,並整合到 Windows 拼字檢查架構中。
拼字檢查 API 是專為 Windows 元件物件模型專業 C/C++ 開發人員所設計, (COM) 應用程式使用。 Windows 或 ASP.NET 服務不支援拼字檢查 API。
版本控制
從Windows 8或Windows Server 2012開始,可以使用拼字檢查 API。 未來的 API 新增作業將會藉由建立可在現有介面上使用 QueryInterface 來判斷的新介面來處理。
介面
所有介面在不再使用時都必須釋出。 所有傳回 (輸出參數) LPWSTR字串 (和IEnumString) 的 LPOLESTR專案都必須在不再使用時,搭配CoTaskMemFree釋放。
錯誤處理
錯誤會以 HRESULT傳回。 此 API 不支援IErrorInfo和ISupportErrorInfo。 除了不正確的引數以外,錯誤不可特別採取動作。
任何 API 呼叫都可能會傳回標準 RPC 錯誤碼,因為它們是跨進程。 套用標準 RPC 逾時。
安全性
拼字檢查 API 可能會載入外部程式碼 (拼字檢查提供者) 。 它會在受限制的安全性內容下執行此程式碼。
字典檔案
語言的使用者特定字典會保存 [新增]、[排除] 和 [自動校正] 字清單的內容,位於 %AppData%\Microsoft\Spelling\< language 標籤 >底下。 filenames is default.dic (Added) , default.exc (Excluded) and default.acl (AutoCorrect) . 這些檔案是 UTF-16 LE 純文字,必須以適當的 Byte Order Mark (BOM) 開頭。 每一行都包含 [新增] 和 [排除] 單字清單中的單字 () ,或自動校正字組與垂直線 (「|」) 自動校正單字清單中的) (。 目錄中存在的其他 .dic、.exc 和 .acl 檔案會由拼字檢查服務偵測,並新增至使用者字組清單。 這些檔案會被視為唯讀,而且不會由拼字檢查 API 修改。
安裝拼字檢查提供者
安裝拼字檢查提供者時,必須將它使用的所有檔案放在允許從 SID (安全性識別碼 讀取存取的位置,) 「所有應用程式套件」。 在 [Program Files] 底下的資料夾中安裝它可正常運作。 此外,提供者必須在登錄中設定一些機碼,使其出現在拼字檢查 API 中。 它可以位於HKEY_CURRENT_USER區或HKEY_LOCAL_MACHINE區中,視它是否應該只針對目前使用者或所有使用者安裝而定。
Key: <Registry hive>\SOFTWARE\Classes\CLSID\<Server CLSID>
Default (REG_SZ) = <Name of the provider>
Key: <Registry hive>\SOFTWARE\Classes\CLSID\<Server CLSID>\InprocServer32
ThreadingModel (REG_SZ) = "Both"
Key: <Registry hive>\SOFTWARE\Classes\CLSID\<Server CLSID>\Version
Version (REG_SZ) = <Version>
Key: <Registry hive>\SOFTWARE\Microsoft\Spelling\Spellers\<Provider id string>
CLSID (REG_SZ) = <CLSID of the COM Server that implements the provider>
拼字檢查提供者範例提供安裝提供者所需的註冊範例。
如果您要為拼字檢查提供者建立新的拼字檢查選項,請參閱 IOptionDescription::Id 以取得命名的指引。
相關主題