SQLGetPrivateProfileString 函数

一致性
引入的版本:ODBC 2.0

总结
SQLGetPrivateProfileString 获取与系统信息值对应的值或数据的名称列表。

语法

  
int SQLGetPrivateProfileString(  
     LPCSTR   lpszSection,  
     LPCSTR   lpszEntry,  
     LPCSTR   lpszDefault,  
     LPCSTR   RetBuffer,  
     INT      cbRetBuffer,  
     LPCSTR   lpszFilename);  

参数

lpszSection
[输入]指向一个以 null 结尾的字符串,该字符串指定包含密钥名称的节。 如果此参数为 NULL,则该函数会将文件中的所有节名称复制到提供的缓冲区。

lpszEntry
[输入]指向包含要检索其关联字符串的键名称的以 null 结尾的字符串。 如果此参数为 NULL,则 lpszSection 参数指定的节中的所有键名称将复制到 RetBuffer 参数指定的缓冲区。

lpszDefault
[输入]指向一个以 null 结尾的字符串,该字符串指定在初始化文件中找不到该键时给定键的默认值。 此参数不能为 NULL。

RetBuffer
[输出]指向接收检索到的字符串的缓冲区。

cbRetBuffer
[输入]指定 RetBuffer 参数指向的缓冲区的大小(以字符为单位)。

lpszFilename
[输入]指向命名初始化文件的以 null 结尾的字符串。 如果此参数不包含文件的完整路径,则会搜索默认目录。

返回

SQLGetPrivateProfileString 返回一个整数值,该值指示读取的字符数。

诊断

调用 SQLGetPrivateProfileString 失败时,可以通过调用 SQLInstallerError 来获取关联的 *pfErrorCode 值。 下表列出了 SQLInstallerError 可返回*pfErrorCode 值,并解释此函数上下文中的每个值。

*pfErrorCode 错误 说明
ODBC_ERROR_GENERAL_ERR 常规安装程序错误 发生错误,没有特定的安装程序错误。
ODBC_ERROR_OUT_OF_MEM 内存不足 由于内存不足,安装程序无法执行该函数。

注释

SQLGetPrivateProfileString 是将驱动程序和驱动程序设置 DLL 从 Microsoft Windows 移植到 Microsoft Windows NT/Windows 2000 的简单方法。 对 从Odbc.ini文件中检索配置文件字符串的 GetPrivateProfileString 的调用应替换为对 SQLGetPrivateProfileString 的调用。 SQLGetPrivateProfileString 调用 Win32 API 中的函数,以检索与系统信息Odbc.ini子项的值相对应的值或数据请求的名称。

配置模式(由 SQLSetConfigMode 设置)指示列出 DSN 值的Odbc.ini条目在系统信息中的位置。 如果 DSN 是用户 DSN(配置模式为 U标准版RDSN_ONLY),则函数从 HKEY_CURRENT_U标准版R 中的Odbc.ini条目中读取。 如果 DSN 是系统 DSN(SYSTEMDSN_ONLY),该函数将从HKEY_LOCAL_MACHINE中的Odbc.ini项读取。 如果配置模式为 BOTHDSN,则尝试 HKEY_CURRENT_U标准版R,如果失败,则使用HKEY_LOCAL_MACHINE。

有关以下方面的信息 请参阅
将值写入系统信息 SQLWritePrivateProfileString