在启动应用程序时,如何确保安装某个OLEDB驱动程序?我使用Delphi的ADO,如果缺少驱动程序,则希望显示描述性错误消息.从ADO返回的错误并不总是那么用户友好.
可能有一个很好的小函数返回所有已安装的驱动程序,但我还没有找到它.
这是一个老问题,但我现在遇到了同样的问题,也许这可以帮助别人.
在Delphi 7中,ADODB中有一个过程,它返回带有提供者名称的TStringList.
用法示例:
names := TStringList.Create; ADODB.GetProviderNames(names); if names.IndexOf('SQLNCLI10')<>-1 then st := 'Provider=SQLNCLI10;' else if names.IndexOf('SQLNCLI')<>-1 then st := 'Provider=SQLNCLI;' else if names.IndexOf('SQLOLEDB')<>-1 then st := 'Provider=SQLOLEDB;';