SQLReadFileDSN 函式
一致性
引進的版本:ODBC 3.0
摘要
SQLReadFileDSN 會從檔案 DSN 讀取資訊。
語法
BOOL SQLReadFileDSN(
LPCSTR lpszFileName,
LPCSTR lpszAppName,
LPCSTR lpszKeyName,
LPSTR lpszString,
WORD cbString,
WORD * pcbString);
引數
lpszFileName
[輸入]包含 .dsn 檔案名的資料緩衝區指標。 .dsn 副檔名會附加至所有尚未具有 .dsn 副檔名的檔案名。 *lpszFileName 中的 值必須是以 Null 結尾的字串。
lpszAppName
[輸入]包含應用程式名稱的資料緩衝區指標。 這是 ODBC 區段的 「ODBC」。 *lpszAppName 中的 值必須是以 Null 結尾的字串。
lpszKeyName
[輸入]包含要讀取之索引鍵名稱的資料緩衝區指標。 請參閱保留關鍵字的「批註」。 *lpszAppName 中的 值必須是以 Null 結尾的字串。
lpszString
[輸出]包含要讀取之索引鍵相關聯之字串的資料緩衝區指標。
如果 *lpszFileName 是有效的 .dsn 檔案名,但 lpszAppName 引數是 Null 指標,而 lpszKeyName 引數是 Null 指標,則 *lpszString 包含有效的應用程式清單。 如果 *lpszFileName 是有效的 .dsn 檔案名,而 *lpszAppName 是有效的應用程式名稱,但 lpszKeyName 引數是 Null 指標,則 *lpszString 會在 DSN 檔案的適當區段中包含有效的保留關鍵字清單,並以分號分隔。 如果 *lpszFileName 是有效的 .dsn 檔案名,但 *lpszAppName 是 Null 指標,而 lpszKeyName 引數是 Null 指標,則 *lpszString 會包含 DSN 檔案中以分號分隔的區段清單。
cbString
[輸入]*lpszString 緩衝區的 長度。
pcing
[輸出]*lpszString 中 可傳回的位元組總數。 如果可用的位元組數目大於或等於 cbString ,則 *lpszString 中的 輸出字串會截斷為 cbString 減去 null 終止字元。 [!][ ! ] 引數可以是 null 指標。
傳回
如果函式成功,則傳回 TRUE,如果失敗,則傳回 FALSE。
診斷
當 SQLReadFileDSN 傳回 FALSE 時 ,可以呼叫 SQLInstallerError 來取得相關聯的 *pfErrorCode 值。 下表列出 SQLInstallerError 可傳 回的 *pfErrorCode 值,並說明此函式內容中的每個值。
*pfErrorCode | 錯誤 | 描述 |
---|---|---|
ODBC_ERROR_GENERAL_ERR | 一般安裝程式錯誤 | 發生錯誤,沒有特定的安裝程式錯誤。 |
ODBC_ERROR_INVALID_BUFF_LEN | 不正確緩衝區長度 | lpszString 引數為 Null。 cbString 引數小於或等於 0。 |
ODBC_ERROR_INVALID_PATH | 安裝路徑無效 | lpszFileName 引數中指定的 檔案名路徑無效。 |
ODBC_ERROR_INVALID_REQUEST_TYPE | 要求類型無效 | lpszAppName 引數為 Null,而 lpszKeyName 引數有效。 |
ODBC_ERROR_OUT_OF_MEM | 記憶體不足 | 由於記憶體不足,安裝程式無法執行函式。 |
ODBC_ERROR_OUTPUT_STRING_TRUNCATED | 輸出字串截斷 | *lpszString 中 傳回的字串已截斷,因為 cbString 中的 值小於或等於 *cbString 中的 值。 |
ODBC_ERROR_REQUEST_FAILED | 要求失敗 | 關鍵字不存在於 DSN 檔案中。 |
註解
ODBC 會保留用來儲存連接資訊的區段名稱 [ODBC]。 本節的保留關鍵字與 SQLDriverConnect 中 為連接字串保留的關鍵字相同。 (如需詳細資訊,請參閱 SQLDriverConnect 函式描述。)
應用程式可以使用這些保留關鍵字來讀取檔案 DSN 中的資訊。 如果應用程式想要找出與 File DSN 相關聯的 DSN 無連接字串,它可以針對 [ODBC] 區段中任何保留的連接字串關鍵字呼叫 SQLReadFileDSN 。 在無 DSN 連線中傳遞的完整連接字串是 [ODBC] 區段中所有關鍵詞(保留和驅動程式特定)的組合。
相關函數
如需下列資訊 | 請參閱 |
---|---|
將資訊寫入檔案 DSN | SQLWriteFileDSN |