SQLRemoveDriverManager 函式
一致性
引進的版本:ODBC 3.0:在 Windows XP Service Pack 2、Windows Server 2003 Service Pack 1 和更新版本的作業系統中淘汰。
摘要
SQLRemoveDriverManager 會從系統資訊中的 Odbcinst.ini 專案變更或移除 ODBC 核心元件的相關資訊。
語法
BOOL SQLRemoveDriverManager(
LPDWORD pdwUsageCount);
引數
pdwUsageCount
[輸出]呼叫此函式之後,驅動程式管理員的使用計數。
傳回
如果函式成功,則傳回 TRUE,如果失敗,則傳回 FALSE。 如果呼叫此函式時系統資訊中沒有任何專案存在,則函式會傳回 FALSE。
診斷
當 SQLRemoveDriverManager 傳回 FALSE 時 ,可以呼叫 SQLInstallerError 來取得相關聯的 *pfErrorCode 值。 下表列出 SQLInstallerError 可傳 回的 *pfErrorCode 值,並說明此函式內容中的每個值。
*pfErrorCode | 錯誤 | 描述 |
---|---|---|
ODBC_ERROR_GENERAL_ERR | 一般安裝程式錯誤 | 發生錯誤,沒有特定的安裝程式錯誤。 |
ODBC_ERROR_COMPONENT_NOT_FOUND | 登錄中找不到元件 | 安裝程式無法移除驅動程式管理員資訊,因為它不存在於登錄中或登錄中找不到。 |
ODBC_ERROR_USAGE_UPDATE_FAILED | 無法遞增或遞減元件使用量計數 | 安裝程式無法遞減驅動程式管理員的使用計數。 |
ODBC_ERROR_OUT_OF_MEM | 記憶體不足 | 由於記憶體不足,安裝程式無法執行函式。 |
註解
SQLRemoveDriverManager 可 補充 SQLInstallDriverManager 函式,並更新系統資訊中的元件使用計數。 此函式只能從安裝應用程式呼叫。
SQLRemoveDriverManager 會將核心元件使用量計數遞減 1。 如果元件使用量計數移至 0,將會移除專案系統資訊。 核心元件專案位於系統資訊中的下列位置,標題為 「ODBC Core」:
HKEY_LOCAL_MACHINE
SOFTWARE
ODBC
Odbcinst.ini
警告
當元件使用方式計數與檔案使用方式計數達到 0 時,應用程式不應實際移除驅動程式管理員檔案。
SQLRemoveDriverManager 實際上不會移除任何檔案。 呼叫程式負責刪除檔案,並維護檔案使用量計數。 不過,當元件使用量計數和檔案使用量計數都達到零時,驅動程式管理員檔案不應該移除,因為這些檔案可能供未遞增檔案使用量計數的其他應用程式使用。
SQLRemoveDriverManager 稱為卸載程式的一部分。 ODBC 核心元件(包括 Driver Manager、Cursor Library、Installer、Language Library、Administrator、Thunking 檔案等等)會以整體的形式卸載。 當呼叫 SQLRemoveDriverManager 做為卸載程式的一部分時 ,不會移除下列檔案:
ODBC32DLL
ODBCCR32.DLL
ODBCCU32.DLL
ODBCINT.DLL
ODBCTRAC.DLL
MSVCRT40.DLL
ODBCCP32.CPL
ODBCCP32.DLL
ODBC16GT.DLL
ODBC32GT.DLL
DS16GT.DLL
DS32GT.DLL
ODBCAD32.EXE
SQLRemoveDriverManager 也稱為升級程式的一部分。 如果應用程式偵測到它必須執行升級,且先前已安裝驅動程式,則應該移除驅動程式,然後重新安裝。
應先呼叫 SQLRemoveDriverManager 來遞減元件使用量計數。 然後應該呼叫 SQLInstallDriverEx ,以增加元件使用量計數。 應用程式安裝程式必須將舊的核心元件檔案取代為新的檔案。 檔案使用計數會維持不變,而使用舊版核心元件檔案的其他應用程式現在會使用較新的版本檔案。
相關函數
如需下列資訊 | 請參閱 |
---|---|
安裝驅動程式管理員 | SQLInstallDriverManager |